NGINX配置重定向
2019-05-17Linux

服务器配置Https之后,我们希望同时支持http,但是80端口进来的请求直接重定向到443端口上。
有时我们会将某些网页永久迁移到别的地址,但是又不想让老用户直接无法访问,或者看到404,而是要将这些老地址的请求转发到新地址上。
这篇文章教你如何配置NGINX重定向。
<!--more-->NGINX安装及配置请移步这里:Nginx安装
使用rewrite
server {
#...
rewrite (.*)$ https://wycode.cn$1 permanent;
#...
}
这里将这个server的所有请求,永久定向到 https://wycode.cn 上,并将请求的path拼接在后面
使用return 301
server {
listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/nginx/cert/wycode.pem;
ssl_certificate_key /etc/nginx/cert/wycode.key;
server_name wycode.cn www.wycode.cn;
error_page 404 = https://wycode.cn/404.html;
location / {
root /var/www/wycode.cn;
index index.html;
try_files $uri $uri/ =404;
}
}
server {
listen 80;
listen [::]:80;
server_name wycode.cn www.wycode.cn;
return 301 https://$host$request_uri;
}
这里的第二个server监听80端口,在下面的return 301语句中将请求转发到第一个server中去,并且host和request_uri不变。
以上,转载请注明出处!