前言
当前一些主流的浏览器会自动解析www域名指向不带www的域名,但是有时候我们并不想让他这样做,所以就需要做下相应的配置.
代码
在需要强制域名跳转的虚拟主机配置文件中做如下修改即可实现
server {
listen 80;
server_name xxx.cn;
rewrite ^(.*)$ https://www.${server_name}$1 permanent;
}
server {
listen 80;
server_name www.xxx.cn;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}
server {
listen 443;
ssl on;
server_name xxx.cn;
rewrite ^(.*)$ https://www.${server_name}$1 permanent;
ssl_certificate /etc/nginx/cert/xxxxxxx.pem;
ssl_certificate_key /etc/nginx/cert/xxxxxxx.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
}
server {
listen 443;
server_name www.xxx.cn;
ssl on;
root /xxxx/public;
# Add index.php to the list if you are using PHP
index index.php index.htm index.html;
ssl_certificate /etc/nginx/cert/xxxxxxx.pem;
ssl_certificate_key /etc/nginx/cert/xxxxxx.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
评论 (0)