IT俱乐部 Nginx nginx几种网页重定向(rewirte)的配置方法详解

nginx几种网页重定向(rewirte)的配置方法详解

实验环境

服务端 ip 环境
server1 172.25.55.1 关闭防火墙,添加域名解析
founcation55 172.25.55.250 关闭防火墙,添加域名解析

一、编译、安装Ngix

1
2
3
4
5
6
7
8
9
10
11
[root@server1 nginx-1.14.2]# ./configure --prefix=/usr/local/nginx/
 --with-http_realip_module --with-http_image_filter_module=dynamic --with-http_ssl_module
[root@server1 nginx-1.14.2]# yum install openssl-devel -y
[root@server1 nginx-1.14.2]# ./configure --prefix=/usr/local/nginx/
--with-http_realip_module --with-http_image_filter_module=dynamic
 --with-http_ssl_module
[root@server1 nginx-1.14.2]# make
 
[root@server1 nginx-1.14.2]# cd objs/
[root@server1 objs]# cp  nginx /usr/local/nginx/sbin/
[root@server1 objs]# cp ngx_http_image_filter_module.so /usr/local/nginx/modules/(没有modules目录,手动创建)

二、测试nginx功能

编辑nginx的配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
[root@server1 certs]# vim /usr/local/nginx/conf/nginx.conf
    134 server {
    135         listen 80;
    136         server_name www.westos.org;
    137    
    138         location / {
    139                 root /web;(访问的资源路径)
    140                 index index.html;
    141 }
    142
    143 }
[root@server1 certs]# nginx -s reload(重载服务)

创建/web目录编辑网页文件index.html。

1
2
3
客户端添加域名解析:
[root@foundation55 新6]# cat /etc/hosts
    172.25.55.1     www.westos.org  bbs.westos.org

测试:客户端访问www.westos.org

常见http状态码含义:

状态码 含义
200 请求成功
301 被请求的资源已永久移动到新位置
302 请求的资源临时从不同的 URI响应请求
404 请求失败

三、重定向一:http—->https

添加证书

1
2
[root@server1 objs]# cd /etc/pki/tls/certs
[root@server1 certs]# make cert.pem

将证书文件复制到nginx下的conf目录下:

1
[root@server1 certs]# cp cert.pem /usr/local/nginx/conf/

编辑nginx配置文件:

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
28
29
30
31
32
33
34
35
[root@server1 certs]# vim /usr/local/nginx/conf/nginx.conf
 
    100     server {
    101        listen       443 ssl;
    102        server_name  www.westos.org;
    103
    104        ssl_certificate      cert.pem;
    105        ssl_certificate_key  cert.pem;
    106
    107        ssl_session_cache    shared:SSL:1m;
    108        ssl_session_timeout  5m;
    109
    110        ssl_ciphers  HIGH:!aNULL:!MD5;
    111        ssl_prefer_server_ciphers  on;
    112
    113        location / {
    114            root   /web;
    115            index  index.html index.htm;
    116        }
    117    }
    118
    119   server {
    120         listen       80;
    121         server_name  www.westos.org;
    122         rewrite ^/(.*)$ https://www/westos/org/$1;
    123
    124
    125
    126         location / {
    127             root   /web;
    128             index  index.html;
    129         }
    130
    131 }
    [root@server1 certs]# nginx -s reload

客户端测试:

客户端浏览器访问:

永久重定向

1
2
3
[root@server1 certs]# vim /usr/local/nginx/conf/nginx.conf
 
    122         rewrite ^/(.*)$ https://www/westos/org/$1 permanent;

客户端测试:

$1的作用

服务端server1/web目录下创建一个test.html网页文件。

1
2
3
4
[root@server1 web]# cat test.html
    test
[root@server1 certs]# vim /usr/local/nginx/conf/nginx.conf
    122         rewrite ^/(.*)$ https://www/westos/org/$1 permanent;

去掉$1后

1
2
[root@server1 web]# vim /usr/local/nginx/conf/nginx.conf
124        rewrite ^/(.*)$ https://www/westos/org/ permanent;

四、服务端再添加一个域名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@server1 bbs]# vim /usr/local/nginx/conf/nginx.conf
 
121   server {
122         listen       80;
123         server_name  bbs.westos.org;
124
125
126
127         location / {
128             root   /bbs;
129             index  index.html;
130         }
131
132 }

创建/bbs目录,并编辑网页文件:

1
2
3
4
5
[root@server1 web]# mkdir /bbs
[root@server1 web]# cd /bbs/
[root@server1 bbs]# ls
[root@server1 bbs]# vim index.html
    bbs.westos.org

客户端测试:

五、重定向二:www.westos.org/bbs—–>bbs.westos.org

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@server1 bbs]# vim /usr/local/nginx/conf/nginx.conf
121   server {
122         listen       80;
123         server_name  www.westos.org;
124         rewrite ^/bbs$ http://bbs.westos.org permanent;
125         #rewrite ^/bbs(.*)$ http://bbs.westos.org/$1 permanent;
126         location / {
127             root   /web;
128             index  index.html;
129         }
130
131 }
132
133    server {
134         listen 80;
135         server_name bbs.westos.org;
136
137         location / {
138                 root /bbs;
139                 index index.html;
140         }
141 }

在浏览器访问http://www.westos.org/bbs,结果如下图。

1
2
3
[root@server1 bbs]# vim /usr/local/nginx/conf/nginx.conf
124         rewrite ^/bbs$ http://bbs.westos.org permanent;
125         rewrite ^/bbs(.*)$ http://bbs.westos.org/$1 permanent;

在浏览器访问http://www.westos.org/bbs/index.html,结果如下图。

六、重定向三:bbs.westos.org—–>www.westos.org/bbs/

1
2
3
4
[root@server1 bbs]# cd /web/
[root@server1 web]# cp -r /bbs/ /web/
[root@server1 web]# ls
bbs  index.html  test.html

以上就是nginx几种网页重定向(rewirte)的配置方法详解的详细内容,更多关于nginx网页重定向配置的资料请关注IT俱乐部其它相关文章!

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/server/nginx/10207.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部