2016-07-05 13 views
0

私は静的にサービスされたサイトを持っています(nginxを使用しています)。 私は/ blogフォルダの下にあるwordpress blog(別のインスタンスでホストされています)をホストしたいと思います。 nginxのプロキシ使用時:NGINXプロキシからWordPressのWebサイト

location /blog/ { 
    proxy_set_header X-Is-Reverse-Proxy "true"; 
    proxy_set_header Host $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $remote_addr; 
    proxy_pass http://55.555.55.555; 
} 

と、次のwp-config.phpの:

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/'); 
define('WP_HOME', 'http://SOMESITE.com/blog/'); 

を彼らが検索されているので、wp-content(およびwp-includes)からのすべてのファイルは、正しく提供されていませんhttp://SOMESITE.com/blog/wp-content/*の代わりにhttp://SOMESITE.com/wp-content/* の下にあります。

location ~* (\/wp-content) { 
    proxy_set_header X-Is-Reverse-Proxy "true"; 
    proxy_set_header Host $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $remote_addr; 
    proxy_pass http://55.555.55.555; 
} 

はWP-config.phpの再定義:

define('WP_SITEURL', 'http://SOMESITE.com/blog/'); 

が任意のアイデアが大好きだ

いくつかの余分なプロキシルールを追加する、元は動作しませんでした。 私はそれが一般的な使用事例であると確信していますが、ここで何か作業の秘訣を見つけることができませんでした。

THX。

答えて

0

WP_SITEURLWP_HOMEの違いはわかりませんが、ほとんどの場合、同じ値に設定する必要があります。あなたのケースでの正しい値は次のとおりです。

define('WP_SITEURL', 'http://SOMESITE.com/blog'); 
define('WP_HOME', 'http://SOMESITE.com/blog'); 

あなたのリソースファイルは、それが最も可能性の高いブラウザのキャッシュで、http://SOMESITE.com/wp-content/*下で検索している場合。

Wordpressサイトがリバースプロキシとアップストリームサーバーの両方で/blogの下に表示されることを前提としています。

+0

を見つけました前に試してみましたが、今度はもう一度試しました。 それだけでなく動作しないだけでなく、それ以来、wordpressのサイトは全く機能しませんでした。それは(wp-contentだけでなく)何も見つかりません。 – Tomer

+0

'55.555.55.555'サーバのwordpressサイトは'/blog'の下にありますか? –

+0

リチャード・スミス私は「単純に」ワードプレスのサイトを/ blogに移動していました。 あなたの答えを正しく更新するように更新してください。 – Tomer

1

だから、これはhttps://happy-dev.fr/blogようproxified WordPressの私の設定です:

location /blog/ { 
    proxy_set_header X-Original-Request $request_uri; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header X-Forwarded-Proto $scheme; 
    proxy_pass https://blog.happy-dev.fr/; 
    proxy_redirect https://$proxy_host/ /; 
} 

これは/blog/サブディレクトリにそれを置く必要がなく、このアドレスblog.happy-dev.frでワードプレスで動作することがあるデフォルトの動作を上書きしますので、 :

proxy_redirect https://$proxy_host/ /blog/ 

私はまあ、私はすでにきたこのそこhttp://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_redirect

関連する問題