Apache2 - Wordpress HTTP 站点跳转 HTTPS

背景和目的

个人博客申请了SSL证书,网站用的 Wordpress,服务器 Apache,现在希望可以通过 HTTPS 访问Wordpress,并强制开启 HTTPS。

一、服务器配置

1、启用模块

需要启用的模块是 mod_rewritemod_ssl

a2enmod rewrite
a2enmod ssl

2、下载证书到服务器

为了方便管理,可以将证书放在 /etc/apache2/ssl 目录下,并按站点分文件夹管理。我的证书是在阿里云上下载的,下载 Apache 的证书共有三个:*.key*_public.crt*_chain.crt

3、创建站点

/etc/apache2/site-available 目录下,创建一个新文件 sitename.conf

vim /etc/apache2/site-available/sitename.conf

文件内容:

<IfModule mod_ssl.c>
        <VirtualHost *:443>
                ServerAdmin webmaster@localhost
                ServerName yourdomain.com
                DocumentRoot /var/www/wordpress
                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined

                SSLEngine on
                SSLCertificateFile      /etc/apache2/ssl/yourcertfile_public.crt
                SSLCertificateKeyFile /etc/apache2/ssl/yourcertfile.key
                SSLCACertificateFile /etc/apache2/ssl/yourcertfile_chain.crt
        </VirtualHost>
</IfModule>
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName yourdomain.com
        RewriteEngine on
        RewriteCond %{HTTPS} !=on
        RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
</VirtualHost>

其中 /etc/apache2/ssl/yourcertfile_public.crt 这几行就是放证书的文件路径;其他内容根据实际修改。

4、启用站点

a2ensite sitename
systemctl restart apache2

二、Wordpress 配置

对于未初始化过的 Wordpress,可以直接打开域名进行配置,无需其他操作。
对于已在使用的 Wordpress,我是直接将设置中的两个站点网址改成 https 开头的,目前使用没有发现问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值