虚拟主机使用Apache服务器之WordPress伪静态及https配置

这几天在帮客户搭建一个外贸网站,因为需要配置https,且客户使用的是虚拟主机,用的是Apache服务器,所以就查找了相关https配置方法,其配置文件如下,只需要写在.htaccess文件内即可,把域名换成你网站的域名。

<IfModule mod_headers.c>
Header add Access-Control-Allow-Origin: *
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On

RewriteCond %{HTTP:From-Https} !^on$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?seouv.com$ [NC]
RewriteRule ^(.*)$ https://www.seouv.com/$1 [R=301,L]
</IfModule>

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

# END WordPress

某些主机修改到上面这一步时可能会提示重定向次数过多的问题,则继续修改wp-includes/load.php或wp-includes/functions.php 这个文件,搜索is_ssl找到对应的函数,将$_SERVER[‘HTTPS’]修改为$_SERVER[“HTTP_FROM_HTTPS”](修改文件前请注意备份)。

或将此函数改为以下

function is_ssl() {
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on'){
return true;
}
elseif (isset($_SERVER["HTTP_FROM_HTTPS"])&&$_SERVER["HTTP_FROM_HTTPS"]=='on'){
return true;
}
elseif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'){
return true;
}
else{
return false;
}
}
优推网专注于WordPress外贸建站、WordPress企业建站和分享谷歌SEO排名技巧、Google优化心得、谷歌seo优化技巧和外贸采集站推广的知识,帮助企业通过谷歌SEO推广打开海外市场。
优推网 » 虚拟主机使用Apache服务器之WordPress伪静态及https配置

发表评论