I have a WordPress blog running behind a reverse proxy (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>
The blog works fine, I can log in as admin, but when try to save settings or delete a plugin (and a wp_redirect occurs) I am redirected to the login page, because wordpress obviously doesn't find/accept the session cookie, and the action doesn't get completed.
Therefore, I have added this line:
ProxyPassReverseCookiePath / http://192.168.101.11/blog/
(see Apache proxy cookies works only with the first app)
This seemed to solve the problem. However, I have noticed now, that with this setting, the login does not work at all, but only in Safari and IE (works just fine in Opera, Firefox, Chrome). I just get redirected to the login page again.
Some additional information:
wordpress_test_cookie
for the admin section are not created at all in Safari, only the ones like "__uc*"
etc. (for the blog itself). Without the ProxyPassReverseCookiePath
-entry, they are created.wp-config.php
define('COOKIE_DOMAIN', '.blog.domain.com');
define('COOKIEPATH', '/');
define('SITECOOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', SITECOOKIEPATH . 'wp-admin' );
Solved it:
I made a slight mistake in the cookie path configuration. It has to be:
ProxyPassReverseCookiePath http://192.168.101.11/blog http://blog.domain.com
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With