我想将我的博客(位于不同的服务器中)添加到我的主网站的子目录/博客中。
通过nginx的代理进展顺利
location /blog/ {
proxy_pass http://107.170.8.156/;
}
我还将这些行添加到config.php
define( 'WP_SITEURL', '/blog' );
define( 'WP_HOME', '/blog' );
$_SERVER['REQUEST_URI'] = str_replace("/wp-admin/", "/blog/wp-admin/", $_SERVER['REQUEST_URI']);
我在互联网上到处搜索,但我找不到任何解决方案。
答案 0 :(得分:1)
在您的评论中,您的配置文件中包含以下内容:
location /blog/ {
proxy_pass http://107.170.8.156/;
}
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 365d;
}
正则表达式位置优先于前缀位置,因此,任何以.css
或.js
结尾的URI都不会发送到代理。
您需要将以/blog/
开头的任何URI发送到代理,而不管文件扩展名是什么。使用^~
修饰符可使前缀位置优先于任何正则表达式位置。尝试:
location ^~ /blog/ {
proxy_pass http://107.170.8.156/;
}
有关详细信息,请参阅this document。