IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> nginx-web的应用-------静态页面编写,虚拟主机配置,状态模块,web location和web rewrite -> 正文阅读

[系统运维]nginx-web的应用-------静态页面编写,虚拟主机配置,状态模块,web location和web rewrite

静态页面的编写

先进行原有的网页备份

mv index.html{,.bak} 

修改html文件
html文件在/usr/local/nginx/html这个路径下

vim index.html
<html>
<meta charset="utf-8">
<head>
     <title>TEST Site</title> 
</head>
<body>
    测试页面
    <table border=1>
         <tr> <td>01</td> <td>云计算 </td></tr>
         <tr> <td>02</td> <td>大数据</td> </tr>
         <tr> <td>03</td> <td>人工智</td> </tr>
    </table>
<body>
</html>

访问
用自己的虚拟机地址去访问一下,就会显示我们html配置文件中所编写的网页命令
在这里插入图片描述

虚拟主机配置

首先在usr/local/nginx/路径下用mkdir创建一个叫做conf.d的目录文件,然后我们创建一个虚拟主机的配置文件vhost.conf,添加虚拟主机实际上就是添加一个server模块,模块示例在nginx.conf的配置文件中,找到虚拟主机模块(virtual host),复制到我们创建的虚拟主机的配置文件中,然后进行修改
在这里插入图片描述

基于ip
主机地址是自己的虚拟机地址,端口都是80端口,现在配置了两个主机,主机名都是localhost,分配在两个不同的网络/data/web1和/data/web2下

  1 server {
  2         listen       192.168.57.152:80;
  3     
  4         server_name localhost;
  5 
  6         location / {
  7             root   /data/web1/html;
  8             index  index.html index.htm;
  9         }
 10     }
 11 
 12 server {
 13         listen       192.168.57.159:80;
 14         
 15         server_name localhost;
 16 
 17         location / {
 18             root   /data/web2/html;
 19             index  index.html index.htm;
 20         }                 

在这里插入图片描述
这里你添加了一个新的ip地址,那你就要在主机地址里添加ip地址,然后重新启动一下网卡,再去查看一下ip列表,就发现已经有添加的ip了。

nmcli con mod ens33 +ipv4.addresses 192.168.57.160/24
nmcli con up ens33

在这里插入图片描述
创建html新的目录文件/data/web{1,2}下的html文件,向两个html文件中追加内容,用nginx -t检测语法

echo "web1 test page" > /data/web1/html/index.html
echo "web2 test page" > /data/web2/html/index.html

语法检测没有问题就重启一下nginxsystemctl restart nginx,用自己的配置的ip地址访问页面内容
在这里插入图片描述
在这里插入图片描述

基于端口
基于端口的虚拟主机配置其实就是ip地址一样,而端口不一样,我们将两个端口一个设置为81,一个为82,重新启动一下nginx
在这里插入图片描述
这个时候我们另外启动一个机器,我们来用这个机器来访问网站内容
在这台机器中我们需要加上主机IP和访问的网址

vim /etc/hosts

在这里插入图片描述

curl blog.wanwen.com
curl bbs.wanwen.com

在这里插入图片描述

配置状态模块
我们在源码安装的时候已经添加了stub_status这一模块,那我们就可以执行这一操作
在配置文件的server模块中,加上location /nginx_status模块将状态开启,日志文件关闭
我这里只配置了第一个网址,所以一会查看状态的时候只有我配置的网址才能查看到状态
在这里插入图片描述
然后在另一台机器上访问网址的状态

curl http://bbs.wanwen.com/nginx_status

在这里插入图片描述

web location
location指令的作用是根据用户请求的URI来执行不同的应用
location使用的语法为

location [=|~|~*|^~] uri {
....
}

说明:
~与 ~的区别:
~:匹配内容区分大小写
~
:匹配内容不区分大小写
!-:取反
^ -:多个匹配同时存在,优先匹配^-匹配的内容(不做正则表达式的检查)
在这里插入图片描述
不同的uri及特殊字符组合匹配顺序说明
在这里插入图片描述
测试location的访问:
编辑配置文件,然后重启一下nginx,去用域名访问

                location / {
                        return 401;
                }
                location =  / {
                        return 402;
                }
                location /documents/ {
                        return 403;
                }
                location ^~ /images/ {
                        return 404;
                }
                location ~* \. (gif|jpg|jpeg) $  {
                        return 500;
                }

在这里插入图片描述
访问测试:

curl -I -w "%{http_code}\n" -o /dev/null -s blog.wanwen.com

curl -I -w "%{http_code}\n" -o /dev/null -s http://blog.wanwen.com//documents/

curl -I -w "%{http_code}\n" -o /dev/null -s http://blog.wanwen.com//document/

curl -I -w "%{http_code}\n" -o /dev/null -s http://blog.wanwen.com/images/a.jpg

curl -I -w "%{http_code}\n" -o /dev/null -s http://blog.wanwen.com/docuements/abc.jpg

在这里插入图片描述

web rewrite
1、什么是 Nginx rewrite ?
和 Apache 等 Web 服务软件一样, Nginx rewrite 的主要功能也是实现 URL 地址重写。 Nginx 的 rewrite 规则需要 PCRE 软件的支持, 即通过 Perl 兼容正则表达式语法进行规则匹配。 前文在安装Nginx 软件时就已经安装了这个 PCRE 软件, 同时也让 Nginx 支持了 rewrite 的功能, 默认参数编译时, Nginx 就会安装支持 rewrite 的模块, 但是, 也必须要有 PCRE 软件的支持。

2、Nginx rewrite 语法
rewrite regex replacement [flag];
默认值:none
应用位置: server、 location、 if

3、rewrite 指令结尾的 flag 标记说明
在这里插入图片描述

实例1:如果访问不存在的任意网页都重定向到错误页面

 location / {
           root html/blog;
           index index.html index.htm;
           if (!-f $request_filename) {
             rewrite /.* /err.html permanent; 
             }
           }

在这里插入图片描述
创建错误页面,并且重定向,在错误页面里面追加“page not found”

ln -sv /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx
echo "page not found" > /usr/local/nginx/html/blog/err.html

在这里插入图片描述
访问:

curl -L http://blog.wanwen.com

在这里插入图片描述
实例2:为某个目录定义别名,用户访问的路径其实并不存在,而是将其转发到另外一个页面
在上一个实例的基础上加上一行内容,重启访问一下在这里插入图片描述

curl http://blog.wanwen.com/forum/err.html

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-06-14 22:57:06  更:2022-06-14 22:57:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:11:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码