之前经过折腾终于配置好了 ssl 证书,,然后 301 和伪静态什么就需要相应的调整。

因为迷之执着现在用的 LNMPA,需要兼顾 apache 和 nginx 两份配置:

/usr/local/apache/conf/vhost/wdssmq.com.conf

/usr/local/nginx/conf/vhost/wdssmq.com.conf

/home/wwwroot/wdssmq.com/.htaccess

前两份在自动生成的基础上微调就可以。

要点:http 跳转 https 只能在 nginx 中配置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
server
{
listen 80;
# listen [::]:80;
server_name www.wdssmq.com wdssmq.com feed.wdssmq.com;
return 301 https://$host$request_uri;
}

server
{
listen 443 ssl http2;
# listen [::]:443 ssl http2;
server_name www.wdssmq.com wdssmq.com feed.wdssmq.com;
# ……………………
# ……
# ……
}

其他的都可以在 .htaccess 实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase /

RewriteCond %{http_host} ^feed.wdssmq.com$ [NC]
RewriteCond %{request_uri} !^/feed.php [NC]
RewriteRule ^(.+)$ https://feed.wdssmq.com [L,R=301]

RewriteCond %{http_host} ^feed.wdssmq.com$ [NC]
RewriteCond %{request_uri} !^/feed.php [NC]
RewriteRule . /feed.php [L]

RewriteRule ^feed.asp /feed.php [L]
RewriteRule ^rss.xml /feed.php [L]

RewriteCond %{http_host} !^www.wdssmq.com [NC]
RewriteCond %{http_host} !^feed.wdssmq.com [NC]
RewriteRule ^(.*)$ https://www.wdssmq.com/$1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^\.]+[^/])$ /$1/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

相关推荐:

「备忘」Nginx 重定向(301)相关_电脑网络_沉冰浮水

「折腾」Nginx 解析网址参数并跳转_电脑网络_沉冰浮水

「备忘」LNMPA 伪静态/301 相关_电脑网络_沉冰浮水「当前」

「笔记」LNMP 部署/续期 SSL 证书_电脑网络_沉冰浮水