Dom*_*omi 8 php wordpress redirect nginx
在我的NGINX配置中,WordPress博客位于私人服务器上.我的NGINX公共服务器代理https://www.example.com/blog/的私人服务器内容.
location ^~ /blog/ { # A "subdirectory", hiding a proxied server
proxy_pass http://192.168.0.5:80/; # The blog resides in the
# private's web root,
# not in a subdirectory
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
}
Run Code Online (Sandbox Code Playgroud)
在调用域和子目录时,博客完美呈现.引发wp-login 不会生成重定向 GET字段.
https://www.example.com/blog/wp-login.php
我的siteurl和我的home变量都设置为带子目录的域.
但是,成功登录后,我可能会看到仪表板,但浏览器中的URL会被重写为https://www.example.com/wp-admin,从而导致使用仪表板时出现问题.
虽然博客位于代理私有服务器上,但如何配置WP以重写URL到子目录?
(服务器中的子目录是否必须对称?)
Buk*_*kky 16
我也遇到了同样的问题,我找到了解决方法,解决了问题,将下面的代码添加到wp-config.php
$_SERVER['REQUEST_URI'] = str_replace("/wp-admin/", "/blog/wp-admin/", $_SERVER['REQUEST_URI']);
Run Code Online (Sandbox Code Playgroud)
Ric*_*ith 11
WordPress使用两个变量来定义它的托管位置:WP_HOME和WP_SITEURL.两者都可以使用仪表板设置,但我更喜欢将它们设置为wp-config.php:
define( 'WP_SITEURL', 'https://www.example.com/blog' );
define( 'WP_HOME', 'https://www.example.com/blog' );
Run Code Online (Sandbox Code Playgroud)
通常设置一个绝对URL(如上所述),其中包括方案和主机名,但我喜欢在反向代理后操作时使用相对URL,如下所示:
define( 'WP_SITEURL', '/blog' );
define( 'WP_HOME', '/blog' );
Run Code Online (Sandbox Code Playgroud)
您可以继续在私有服务器的根目录中运行WordPress(假设不直接访问它).将私有服务器向下移动一级会稍微复杂一些,并且需要稍微更改两台服务器上的Web服务器配置.
| 归档时间: |
|
| 查看次数: |
4856 次 |
| 最近记录: |