首先,抱歉我的英语不好:)
我在apache上遇到wordpress问题。 我的网站完全是https。 证书没问题。 所有网站都受到http身份验证的限制。
在网站访问(https://www.mywebsite.com/)身份验证对话框显示(用户/密码)时,我将访问登录/通过,单击确定,然后......确定。没有任何问题。我可以毫无问题地导航到任何地方,不再需要验证对话框,网站始终是HTTPS。
但是......在地址栏中,我把" https://www.mywebsite.com/wp-admin"而且......它很疯狂。 当我有效URL时,再次打开身份验证对话框,并显示域指示" http://www.mywebsite.com/"。 我再次提供了访问/登录信息,我很好地重定向到" https://www.mywebsite.com"。 现在可以通过https,无对话框,没有http ...
来访问wp-admin我的.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
<IfModule mod_setenvif.c>
SetEnvIf X-Forwarded-Proto "^https$" HTTPS
</IfModule>
# END WordPress
## Default .htaccess file
AuthName "Accès protégé"
AuthType Basic
AuthUserFile "/var/www/.htpasswd"
Require valid-user
我的(部分)wp-config文件:
define('WP_HOME','https://www.mywebsite.com');
define('WP_SITEURL','https://www.mywebsite.com');
define('WP_CACHE', false);
我尝试使用和不使用此行:
define('FORCE_SSL_ADMIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
$_SERVER['HTTPS']='on';
但没有变化。 我已停用所有插件,同样的问题...... 我完全疯了! 任何帮助都会非常感激......
感谢。 祝你有愉快的一天:)