爱数物

Math and Physics

Apache环境配置.htaccess实现全站301域名跳转

当我们的网站安装好ssl证书后通常需要将http进行301强制跳转至https,那么具体如何实现301跳转呢?这里我们仅介绍Apache服务器实现http到https的301重定向。其他如主域名、二级域名跳转方法相同。

1.利用ssh连接至服务器,找到网站根目录。

对于阿里云轻量服务器网站根目录位于/yjdata/www/wordpress中。

2.执行vim .htaccess打开网站根目录下的.htaccess文件。

3.在<IfModule mod_rewrite.c>后添加如下代码

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yongzhen666.cn/$1 [L,R=301]

这里代码中的www.yongzhen666.cn是我的网站域名,将其替换为自己的域名即可实现自动跳转https。

对于跳转至其他域名的方法如下:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^yongzhen666.cn$ [NC]
RewriteRule ^(.*)$ https://www.yongzhen666.cn/$1 [L,R=301]

此为由yongzhen666.cn跳转至www.yongzhen666.cn的代码。只需将这两处域名替换为自己想要跳转的域名即可实现重定向。

4.保存并关闭.htaccess文件,重启Apache服务器命令:

systemctl restart httpd.service

此时301强制跳转配置完成。打开浏览器,输入http://www.yongzhen666.cn会自动跳转至https://www.yongzhen666.cn。

点赞
  1. i数物 i数物说道:

    wordpress环境下显示“在BEGIN WordPress与END WordPress之间的指令(行)是 # 动态生成的,只应被WordPress过滤器修改。 # 任何对标记之间的指令的修改都会被覆盖。”,只需要在.htaccess文件开头新增

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{SERVER_PORT} 80
    RewriteRule ^(.*)$ https://www.yongzhen666.cn/$1 [L,R=301]
    </IfModule>

    即可,无需插入到已有的

    <IfModule mod_rewrite.c>
    </IfModule>

    中。

发表评论

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

Secured By miniOrange