タグ付けされた質問 「rewrite」

URL書き換えは、受信したURLを変更されたURLにマッピングし、元の要求が変更されたURLに対して行われたかのように要求が処理されるようにします。これは、検索エンジンにわかりやすいURLを提供するためによく使用されます。

4
プロキシ経由のNginxリダイレクト、URLの書き換えと保存
Nginxでは、次のようにURLをリダイレクトしようとしました。 http://example.com/some/path -> http://192.168.1.24 ユーザーはブラウザに元のURLを表示したままです。ユーザーがリダイレクトされたら、へのリンクをクリックするとします。/section/index.htmlリダイレクトにつながるリクエストを作成するようにしたいと思います。 http://example.com/some/path/section/index.html -> http://192.168.1.24/section/index.html 再び元のURLを保持します。 私たちの試みには、プロキシと書き換えルールを使用したさまざまなソリューションが関係しており、ソリューションに最も近い構成を示しています(これはWebサーバーのWebサーバー構成であることに注意してくださいexample.com)。ただし、これにはまだ2つの問題があります。 Webサーバーhttp://192.168.1.24が受信した要求URLに含まれ/some/pathているため、必要なページの提供に失敗するため、書き換えは適切に実行されません。 ページが提供された後にリンクにカーソルを合わせると/some/path、URLに表示されません server { listen 80; server_name www.example.com; location /some/path/ { proxy_pass http://192.168.1.24; proxy_redirect http://www.example.com/some/path http://192.168.1.24; proxy_set_header Host $host; } location / { index index.html; root /var/www/example.com/htdocs; } } でウェブサーバーの設定を変更するだけのソリューションを探していますexample.com。構成を変更することもできます192.168.1.24(Nginxも)が、アクセスをプロキシする数百の異なるサーバーに対してこのセットアップを繰り返す必要があるため、これを試して回避したいと思いますexample.com。

7
「www」を削除し、nginxで「https」にリダイレクトします
私はnginxで2つのことを行うルールを作成したい: 「www」を削除します。リクエストURIから 要求URIが「http」の場合、「https」にリダイレクトします これらのそれぞれを個別に行う方法の例はたくさんありますが、両方を正しく実行する(つまり、リダイレクトループを作成せず、すべてのケースを適切に処理する)ソリューションを見つけることはできません。 これらのすべてのケースを処理する必要があります。 1. http://www.example.com/path 2. https://www.example.com/path 3. http://example.com/path 4. https://example.com/path これらはすべて、ループせずにhttps://example.com/path(#4)で終わるはずです。何か案は?
57 nginx  ssl  https  rewrite 

4
Nginxは1つのパスを別のパスにリダイレクトします
これは以前に尋ねられたと確信していますが、有効な解決策は見つかりません。 WebサイトはCMSサービスを切り替えましたが、同じドメインを持っています。単一ページのnginx書き換えを設定するにはどうすればよいですか? 例えば 古いページ http://sitedomain.co.uk/content/unique-page-name 新しいページ http://sitedomain.co.uk/new-name/unique-page-name 注意してください、コンテンツページ内のすべてがリダイレクトされるのではなく、文字通り上記のURLだけがリダイレクトされます。設定するリダイレクトは約9個ありますが、そのうちどれもパターンに適合しません。 ありがとう! 編集:私はこの解決策を見つけましたが、スラッシュなしでリダイレクトするという事実を除いて、動作しているようです: if ( $request_filename ~ content/unique-page-name/ ) { rewrite ^ http://sitedomain.co.uk/new-name/unique-page-name/? permanent; } しかし、これは次のものにリダイレクトされます。 http://sitedomain.co.uknew-name/unique-page-name/
51 nginx  rewrite 

2
nginx url rewriting:breakとlastの違い
breakとlast(rewriteのフラグ)の違いがわかりません。ドキュメントはかなり難解です。いくつかの設定で2つを切り替えようとしましたが、動作の違いを見つけることができませんでした。誰かがこれらのフラグを詳細に説明してもらえますか?あるフラグを別のフラグに切り替えるときに異なる動作を示す例が望ましい。
45 nginx  rewrite 



3
Nginxの変数$ host、$ http_host、および$ server_nameの違いは何ですか?
3つのnginxの変数の違いは何ですか$host、$http_hostとは$server_name? 私はどちらを使用する必要があるかわからない書き換えルールを持っています: location = /vb/showthread.php { # /vb/showthread.php?50271-What-s-happening&p=846039 if ($arg_p) { return 301 $scheme://$host/forum/index.php?posts/$arg_p/; } 「書き換えルールで___変数を使用する」だけでなく、それらの理論的な違いを説明する答えを探しています。
42 nginx  rewrite 

1
HttpRewriteModuleでNginxのURLの一部をすばやく簡単に削除する方法は?
HttpRewriteModuleについては知っていますが、正規表現の処理方法は実際にはわかりません。特定のディレクトリ内のすべてのURLを、特に別のディレクトリにリダイレクトする必要があります。 example.com/component/tag/whatever に example.com/tag/whatever Nginxでこれを行う方法を教えてもらえますか?

2
HAProxy reqrepは、バックエンド要求でURIを削除します
HAProxy reqrepに関する簡単な質問。バックエンドに送信されるリクエストを書き換え/置き換えようとしています。 次のサンプルドメインとURIがあり、両方とも同じドメイン名を共有していますが、バックエンドWebサーバープールが異なります。 http://domain/web1 http://domain/web2 web1をバックエンドwebfarm1に、web2をwebfarm2に行きたいです。現在、これは起こります。ただし、リクエストがバックエンドに送信されたときにweb1またはweb2 URIを削除したいです。 これが私のhaproxy.cfgです frontend webVIP_80 mode http bind :80 #acl routing to backend acl web1_path path_beg /web1 acl web2_path path_beg /web2 #which backend use_backend webfarm1 if web1_path use_backend webfarm2 if web2_path default_backend webfarm1 backend webfarm1 mode http reqrep ^([^\ ]*)\ /web1/(.*) \1\ /\2 balance roundrobin …

3
nginxリバースプロキシでSet-Cookieのドメイン部分を書き換える方法は?
サーバーフォールトで回答できるため、 この質問はStack Overflowから移行されました。 8年前に移行され ました。 私はシンプルなnginxリバースプロキシを持っています: server { server_name external.domain.com; location / { proxy_pass http://backend.int/; } } 問題は、バックエンドがそれが逆プロキシされていることを知らないため、Set-Cookie応答ヘッダーにが含まれて;Domain=backend.intいることです。 Set-Cookieに置き換え;Domain=backend.intて、応答ヘッダーのコンテンツをnginxに書き換えさせるにはどうすればよい;Domain=external.domain.comですか? Hostこの場合、ヘッダーを変更せずに渡すことはオプションではありません。 Apache httpdにはしばらくの間この機能がありましたが、を参照してくださいProxyPassReverseCookieDomain。しかし、nginxで同じことを行う方法を見つけることができないようです。

10
配信されたすべてのHTMLページにHTMLコードを挿入する方法
Apache web server静的なHTMLページを配信するを持っています。何らかの理由でファイル自体を変更することはできませんが、提供されているすべてのページにHTMLを挿入したいです。 これは可能mod_proxyですか?そうでない場合、そのような機能を提供するソフトウェアを誰かが推奨できますか? 編集:バナー広告(javascript)などの種類とトラッキングピクセルを挿入する必要があります。

2
nginxプロキシでURLデコードを無効にする
このURLを参照すると、http://localhost:8080/foo/%5B-%5Dサーバー(nc -l 8080)はそのまま受信します。 GET /foo/%5B-%5D HTTP/1.1 ただし、nginx(1.1.19)を介してこのアプリケーションをプロキシする場合: location /foo { proxy_pass http://localhost:8080/foo; } nginxポート経由でルーティングされた同じリクエストは、パスがデコードされて転送されます。 GET /foo/[-] HTTP/1.1 GETパス内のデコードされた角括弧は、エスケープされずに到着するため、ターゲットサーバーでエラー(HTTPステータス400-パス内の不正な文字...)を引き起こしています。 URLデコードを無効にする方法、またはエンコードして元に戻す方法はありますか?それにより、ターゲットサーバーがnginx経由でルーティングされたときにまったく同じパスを取得できるようになりますか?巧妙なURL書き換えルール?
21 nginx  rewrite  url 

1
URL書き換えルールをエクスポートするにはどうすればよいですか?
IIS7のURL書き換えルールをエクスポートすることはできますか? 内部使用(テスト)用にWebサイトの複製を設定していますが、手動で入力せずにすべてのURL書き換えルールを複製したいです。 インポートオプションはありますが、明らかな「エクスポート」はありません... ありがとう!

4
nginx + PHP-FPM = nginxログの「permission denied」エラー13。設定ミス?
1つのRHEL5サーバーでPHP 5.2.10の下でngi​​nx 0.7x + PHP-FPMを実行していますが、2台目のサーバー上のPHP 5.3.3のバンドルされたPHP-FPMでセットアップを複製しようとしています。 GETが発生するたびに許可エラーが発生する問題。 FPMが起動し、fastcgiが9000でリッスンしていることを確認しましたが、GETを実行するたびに、nginxログに次のエラーが表示されます。 2010/08/12 23:38:53 [crit] 5019#0: *5 stat() "/home/noisepages/www/" failed (13: Permission denied), client: 24.215.173.141, server: dev.noisepages.com, request: "GET / HTTP/1.1", host: "dev.noisepages.com" Barebones nginx.conf.defaultは、少なくとも動作します。これが私のnginx.confです server { listen 80; server_name dev.noisepages.com; root /home/noisepages/www; index index.html index.htm index.php; access_log logs/dev.access.log; error_log logs/dev.error.log; location / { …

5
URLが常にwwwで始まるように強制するにはどうすればよいですか?
www.mydomain.comエイリアスを介してユーザーが到着しても、ユーザーが確実にアクセスできるようにしたいと考えていますmydomain.com。これにより、サブドメインのCookieを制御できるようになり、GoogleがURLの寄せ集めではなく、1つの単一のドメインを認識できるようになりました。 どのようにApacheでこれを行うことができますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.