301重定向的作用主要有两个:一是为了URL规范化并集中权重不让权重分散;二是为了网站改版将旧版本的页面的所有指标全部转移到新版本的页面上。
下面的实例实现的效果是:
http://aisheji.org
http://www.aisheji.org
https://aisheji.org
全部重定向到
https://www.aisheji.org
以实现链接的唯一性,其他方式可参照修改。
主要是通过修改.conf
配置文件来实现。
一般主机Nginx配置文件位于:/usr/local/nginx/conf/vhost/你的域名.conf
宝塔面板Nginx配置文件位于:/www/server/panel/vhost/nginx/你的域名.conf
server {
listen 80;
server_name aisheji.org www.aisheji.org;
return 301 https://www.aisheji.org$request_uri;
#HTTP 301 重定向至 HTTPS
}
server
{
listen 443 ssl http2;
server_name aisheji.org www.aisheji.org;
if ($host = 'aisheji.org') {
return 301 https://www.aisheji.org$request_uri;
}
#https://aisheji.org 301 重定向至 https://www.aisheji.org
#其他SSL相关配置,比如SSL证书,404页面等
}
主要分两个部分实现功能,已经在代码中做了详细注释,注意两个server内容不能合并。
设置完成后别忘了用网页状态检测工具检测一下网页状态。
Apache的重定向可以通过配置.htaccess
实现,具体可参考:Typecho Apache 301重定向规则