WordPress http到https重定向

68de4m5k  于 2022-12-17  发布在  WordPress
关注(0)|答案(5)|浏览(190)

我有一个wordpress网站与ssl实现。该网站在https://domain.com工作正常。我想重定向所有流量从http://domain.comhttps://domain.com。我谷歌了一下这一点,并改变了我的。htaccess如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# BEGIN WordPress
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

重定向不起作用。我试过像Easy HTTPS重定向,WordPress HTTPS等插件,但仍然不起作用。有人能帮我解决这个问题吗?另外,我想补充的是,当我试图访问http://domain.com时,它不连接。提前感谢。

osh3o9ms

osh3o9ms1#

你不应该需要一个插件来做这个...
尝试在.htaccess的RewriteRule中进行以下小更改:

RewriteCond %{HTTPS} off
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
h4cxqtbf

h4cxqtbf2#

请确保您已更改wp_options表、站点URL和主页中的设置以包括

option_name                     option_value     
siteurl                         https://<your domain>
home                            https://<your domain>
qzlgjiam

qzlgjiam3#

要将所有流量从http://.com重定向到https://.com,我使用此插件(总是为我工作):https://wordpress.org/plugins/wp-force-ssl/

wz3gfoph

wz3gfoph4#

试着把RewriteBase移到http重定向的下面,然后放到wordpress的部分,这样我就解决了这个问题。

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
esyap4oy

esyap4oy5#

确保在wp-config.php中定义了WP_SITEURL和WP_HOME

define('WP_HOME','https://yourdomain.com');
define('WP_SITEURL','https://yourdomain.com');

并添加此条件以检查wp-config.php中的https

if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && 'https' == $_SERVER['HTTP_X_FORWARDED_PROTO'] ) {
    $_SERVER['HTTPS'] = 'on';
}

相关问题