実現したいこと
pythonで作ったシステムのURLがhttp://192.168.0.111:5000でアクセスできるようになっています。
この5000の表示を見えないようにしたいと思ってます。
http://192.168.0.111/testsearchでhttp://192.168.0.111:5000にアクセスできるようにしたいです。
発生している問題・分からないこと
IISのURL書き換えを設定したのですが、
「404 - ファイルまたはディレクトリが見つかりません。」
が表示されてしまってます。
エラーメッセージ
error
1「404 - ファイルまたはディレクトリが見つかりません。」
該当のソースコード
パターンに「testsearch(.*)」 アクションに「http://localhost:5000/」 と記載しています。
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
色々試しても「404 - ファイルまたはディレクトリが見つかりません。」が表示されるのでチガウフォルダにアクセスしていると思います。
設定方法を教えていただけないでしょうか?
よろしくお願いします。
補足
特になし
80番ポートに変更することはできないのでしょうか。
変更できないです。
なんかできそうな感じです。(未確認)
【IIS】URL書き換え(URL Rewrite)を使用したポート番号の変更
https://qiita.com/yaju/items/a86f26d6dd7977695457
このサイトを見てやってるんですけど、うまくいかなくて。
ポート 80 のサイトとポート 5000 のサイトがあると思いますが、設定するのは 80 のほうです。
5000 側を設定していないでしょうか?
@westbom さん
5000番ポートを使用していながら、80番ポートを使用しているように詐称する事は出来ません。
@westbom さん
仮にURL Rewriteで実装可能だとしても、ブラウザから見て http://localhost:80/ にリクエストし、サーバ内部で http://localhost:5000/ にリダイレクトしているだけです。
80番ポートと5000番ポートの両方を使います。
80番ポートは使えないという事ですから、この方法は使えません。
ブラウザのアドレスバーでポート番号を非表示にするには、下記2択になると思います。
・httpプロトコルで80番ポートで待ち受ける
・httpsプロトコルで443番ポートで待ち受ける
パターン: ^testsearch(/.*)?$
リダイレクトURL: http://localhost:5000{R:1}
を試してください。
これだとブラウザの表示も変わるので、元のままにしたい場合はリバースプロキシの導入が必要です。
あれれ Chrome と FireFox だと http://localhost/testsearch でいけますが Edge だと http://localhost/testsearch/ にしないとダメですね。しかも http://localhost:5000// となります。
教えていただいた設定でしたのですが、やはりできないですね。
飛び先が http://localhost:80/testsearchになってるようです。
ウチでは先のコメントに書いた通りに動いてます。Webサイト(80のほう)を再起動してみましたか?
質問者は「80は使えません。」と書いているのでIISで80番ポートを使用していないと思われますが、スルーされた私はおよびではないので質問者へのアドバイスはこれを最後にします。
あと、80番ポートでサーバを立てておきながら、URL Rewriteで5000番ポートにリダイレクトさせるとなると、80番ポートで立てたサーバのコンテンツにアクセスできなくなるので本末転倒な印象。
私なら80番ポートで立てたサーバ一つで運用しますが、私の知らないのっぴきならない事情があるのでしょう。
@think49 さん
なるほど、ポート80 は別のサービスが動いているってことですかね。
とすると、何を設定したのだろう?
どうなんです>質問者さん