2016-01-24 85 views
0

我有一個呈現以下設置:nginx轉發後保持域相同嗎?

DOMAIN_NAME - > nginx_ip_address - > wordpress_blog_ip_address

凡當用戶訪問「/博客」,nginx的轉發運行一個請求到機器的一個單獨的IP地址WordPress的博客。

問題是,當用戶點擊博客中的帖子時,url將顯示爲「wordpress_blog_ip_address/post」而不是「domain_name/blog/post」。我怎樣才能解決這個問題?

我目前Nginx的文件如下:

server { 
    location/{ 
     proxy_pass http://localhost:8000; 
     proxy_set_header Host $host; 
     proxy_set_header X-Real-IP $remote_addr; 
    } 

    location /blog { 
    proxy_pass http://new_ip_address/; 
     proxy_set_header Host $host; 
    } 
} 

回答

0

這可能是wordpress的配置爲使用wordpress_blog_ip_address/作爲絕對URL,以及所有網址WordPress的回報將與wordpress_blog_ip_address/開始。爲了改變這種絕對URL,在wp-config.php,設置WP_SITEURL被動態生成的,即:

define('WP_SITEURL', 'http://' . $_SERVER['SERVER_NAME'] . '/'); 

與同爲WP_HOMEWP_CONTENT_URLWP_PLUGIN_URL和含有絕對URL另一場。 (使用搜索功能,在編輯器中。)

來源:https://codex.wordpress.org/Editing_wp-config.php#WordPress_address_.28URL.29

0

另一種方式來做到這一點是通過強制WordPress的輸出相對URL使用Relative URL插件。

相關問題