- Wordpress建站

将WordPress站点从http切换至https

摘要

这篇文章将会记录如何将Wordpress站点从http切换至https。

注意:确定站点能够通过http协议正确访问,否则在经过如下步骤切换至https后,可能无法再次访问站点。

步骤一:打开wp-config.php文件

打开wp-config.php文件,假设Wordpress安装的根目录为“wordpress”:

# 如果操作目录需要root权限,则在命令开始处添加sudo
vim /wordpress/wp-config.php

步骤二:编辑文件

在文件中的第一个 <?php 后添加如下语句:

$_SERVER['HTTPS'] = 'on';
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);

步骤三:修改网站地址

在Wordpress管理后台的Settings/General选项卡中,将网址更改为正确的https网址:

步骤四:配置Apache虚拟主机文件

为wordpress服务新建一个apache配置文件,假设apache被安装在 /etc/httpd 目录,文件名为 blog.conf:

sudo vim /etc/httpd/conf.d/blog.conf
SSLPassPhraseDialog  builtin
SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout  300
SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW:!RC4:

<VirtualHost _default_:80>
    # 此处替换为正确的网址
    Servername www.example.com
    ErrorLog logs/error_log
    TransferLog logs/access_log
    LogLevel warn

    # 301 跳转
    RewriteEngine on
    RewriteCond   %{HTTPS} !=on
    RewriteRule   ^(.*)  https://%{SERVER_NAME}$1 [L,R] 
</VirtualHost>

<VirtualHost _default_:443>
    # 此处替换为正确的网址
    Servername www.example.com
    ErrorLog logs/ssl_error_log
    TransferLog logs/ssl_access_log
    LogLevel warn
    SSLEngine on
    # 此处替换为SSL证书所在的目录
    SSLCertificateFile path_of_cert_file
    SSLCertificateKeyFile path_of_cert_key_file
    RewriteEngine On

    SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
    ProxyPass / http://www.example.com/
    ProxyPassReverse / http://www.example.com/
</VirtualHost>

对于80端口的监听(http协议),使用301跳转以强制进行https访问。

步骤五:重新加载Apache服务并访问Wordpress站点的https网址

重新加载apache服务:

sudo systemctl reload httpd

使用https网址访问Wordpress站点即可。

About Ziqi.Yang394

Read All Posts By Ziqi.Yang394

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注