mar*_*sze 4 apache safari wordpress reverse-proxy session-cookies
我有一个WordPress博客在反向代理(Apache)后面运行.
httpd.vhosts.conf:
<VirtualHost *:80>
ServerName blog.domain.com:80
ServerAlias www.blog.domain.com
ProxyPass / http://192.168.101.11/blog/
ProxyPassReverse / http://192.168.101.11/blog/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
该博客工作正常,我可以登录作为管理员,但是当试图保存设置或删除插件(和wp_redirect发生),我重定向到登录页面,因为WordPress的显然没有找到/接受会话cookie,以及该行动未完成.
因此,我添加了这一行:
ProxyPassReverseCookiePath / http://192.168.101.11/blog/
Run Code Online (Sandbox Code Playgroud)
(请参阅Apache代理cookie仅适用于第一个应用程序)
这似乎解决了这个问题.但是,我现在注意到,使用此设置,登录根本不起作用,但仅限于Safari和IE(在Opera,Firefox,Chrome中工作得很好).我只是再次被重定向到登录页面.
一些其他信息:
wordpress_test_cookie
管理部分根本不是在Safari中创建的,只是类似的"__uc*"
等等(对于博客本身).如果没有ProxyPassReverseCookiePath
-entry,他们正在创建的.WP-config.php文件
define('COOKIE_DOMAIN', '.blog.domain.com');
define('COOKIEPATH', '/');
define('SITECOOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', SITECOOKIEPATH . 'wp-admin' );
Run Code Online (Sandbox Code Playgroud)
解决了它:
我在cookie路径配置中犯了一个小错误.它一定要是:
ProxyPassReverseCookiePath http://192.168.101.11/blog http://blog.domain.com
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12681 次 |
最近记录: |