Nginx网站服务配置(二)

简介: 1、编译安装Nginx服务2、认识Nginx服务的主配置文件nginx.conf3、访问状态统计配置4、基于授权的访问控制5、基于客户端的访问控制6、基于域名的Nginx的虚拟主机7、基于 IP 的Nginx的虚拟主机8、基于端口的Nginx的虚拟主机

4、基于授权的的访问控制:


a)生成用户密码认证文件

yum install -y httpd-tools
htpasswd -c /usr/local/nginx/passwd.db zhangsan
chown nginx /usr/local/nginx/passwd.db
chmod 400 /usr/local/nginx/passwd.db

c1.pngc2.png

b)修改主配置文件相对应目录,添加认证配置项

vim /usr/local/nginx/conf/nginx.conf
......
    server {
        location / {
            ......
            ##添加认证配置##
            auth_basic "secret";
            auth_basic_user_file /usr/local/nginx/passwd.db;
        }
    }


c3.png


c)重启服务,访问测试

nginx -t
systemctl restart nginx
浏览器访问 http://20.0.0.20或www.lvbu.com


c4.pngc5.png


5、基于客户端的访问控制:


访问控制规则如下:

deny IP/IP 段:拒绝某个 IP 或 IP 段的客户端访问。

allow IP/IP 段:允许某个 IP 或 IP 段的客户端访问。

规则从上往下执行,如匹配则停止,不再往下匹配。


vim /usr/local/nginx/conf/nginx.conf
......
    server {
        location / {
            ......
            ##添加控制规则##
            deny 20.0.0.100;                    #拒绝访问的客户端 IP
            allow all;                              #允许其它IP客户端访问
        }
    }
systemctl restart nginx


c6.pngc7.pngc8.png


6、基于域名的Nginx虚拟主机:


a)为虚拟主机提供域名解析

echo "20.0.0.14 www.lvbu.com www.accp.com" >> /etc/hosts

b)为虚拟主机准备网页文档

mkdir -p /var/www/html/lvbu
mkdir -p /var/www/html/accp
echo "<h1>www.lvbu.com</h1>" > /var/www/html/lvbu/index.html
echo "<h1>www.accp.com</h1>" > /var/www/html/accp/index.html

c9.png


c)修改Nginx的配置文件

vim /usr/local/nginx/conf/nginx.conf
......
http {
......
    server {
        listen 80;
        server_name www.lvbu.com;                   #设置域名www.lvbu.com
        charset utf-8;
        access_log logs/www.lvbu.access.log;
        location / {
            root /var/www/html/lvbu;                    #设置www.lvbu.com 的工作目录
            index index.html index.php;
        }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
            root html;
        }
    }
    server {
        listen 80;
        server_name www.caocao.com;                 #设置域名www.caocao.com
        charset utf-8;
        access_log logs/www.caocao.access.log;
        location / {
            root /var/www/html/caocao;
            index index.html index.php;
        }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
            root html;
        }
    }  
}


c10.pngc11.pngc12.png


7、基于IP的Nginx的虚拟主机:


ifconfig ens33:0 20.0.0.21 netmask 255.255.255.0
vim /usr/local/nginx/conf/nginx.conf
......
http {
......
server {
        listen 20.0.0.20:80;                    #设置监听地址
        server_name www.lvbu.com;
        charset utf-8;
        access_log logs/www.lvbu.access.log;
        location / {
            root /var/www/html/lvbu;
            index index.html index.php;
        }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
            root html;
        }
    }
server {
    listen 20.0.0.20:80;                    #设置监听地址
    server_name www.caocao.com;
    charset utf-8;
    access_log logs/www.caocao.access.log;
    location / {
        root /var/www/html/caocao;
        index index.html index.php;
    }
    error_page 500 502 503 504 /50x.html;
    location = 50x.html{
        root html;
    }
}  
}
systemctl restart nginx


c13.png


8、基于端口的Nginx的虚拟主机:

vim /usr/local/nginx/conf/nginx.conf
......
http {
......
    server {
        listen 20.0.0.17:666;                   #设置监听 666 端口
        server_name www.lvbu.com;
        charset utf-8;
        access_log logs/www.lvbu.access.log;
        location / {
            root /var/www/html/lvbu;
            index index.html index.php;
        }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
            root html;
        }
    }
server {
    listen 20.0.0.21:888;                   #设置监听 888 端口
    server_name www.accp.com;
    charset utf-8;
    access_log logs/www.caocao.access.log;
    location / {
        root /var/www/html/accp;
        index index.html index.php;
    }
    error_page 500 502 503 504 /50x.html;
    location = 50x.html{
        root html;
      }
  }
}<br><br><br><br>systemctl restart nginx

c15.png


相关文章
|
23天前
|
应用服务中间件 BI nginx
Nginx的location配置详解
【10月更文挑战第16天】Nginx的location配置详解
|
30天前
|
缓存 负载均衡 安全
Nginx常用基本配置总结:从入门到实战的全方位指南
Nginx常用基本配置总结:从入门到实战的全方位指南
247 0
|
1月前
|
应用服务中间件 Linux nginx
Jetson 环境安装(四):jetson nano配置ffmpeg和nginx(亲测)之编译错误汇总
这篇文章是关于在Jetson Nano上配置FFmpeg和Nginx时遇到的编译错误及其解决方案的汇总。
85 4
|
1月前
|
自然语言处理 大数据 应用服务中间件
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
60 5
|
3天前
|
存储 负载均衡 中间件
Nginx反向代理配置详解,图文全面总结,建议收藏
Nginx 是大型架构必备中间件,也是大厂喜欢考察的内容,必知必会。本篇全面详解 Nginx 反向代理及配置,建议收藏。
Nginx反向代理配置详解,图文全面总结,建议收藏
|
15天前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
nginx配置反向代理404问题
|
5天前
|
负载均衡 前端开发 JavaScript
Nginx 代理多服务
以上是 Nginx 代理多服务的几种常见方式,在实际应用中,可以根据具体的业务需求和系统架构选择合适的代理方式,并结合其他 Nginx 的功能和配置来优化和完善系统的性能和功能。
|
10天前
|
应用服务中间件 网络安全 PHP
八个免费开源 Nginx 管理系统,轻松管理 Nginx 站点配置
Nginx 是一个高效的 HTTP 服务器和反向代理,擅长处理静态资源、负载均衡和网关代理等任务。其配置主要通过 `nginx.conf` 文件完成,但复杂设置可能导致错误。本文介绍了几个开源的 Nginx 可视化配置系统,如 Nginx UI、VeryNginx、OpenPanel、Ajenti、Schenkd nginx-ui、EasyEngine、CapRover 和 NGINX Agent,帮助简化和安全地管理 Nginx 实例。
|
1月前
|
编解码 Ubuntu 应用服务中间件
Jetson 环境安装(三):jetson nano配置ffmpeg和nginx(亲测)
本文介绍了在NVIDIA Jetson Nano上配置FFmpeg和Nginx的步骤,包括安装、配置和自启动设置。
126 1
Jetson 环境安装(三):jetson nano配置ffmpeg和nginx(亲测)
|
20天前
|
缓存 负载均衡 应用服务中间件
Nginx配置
【10月更文挑战第22天】在实际配置 Nginx 时,需要根据具体的需求和环境进行调整和优化。同时,还需要注意配置文件的语法正确性和安全性。
36 7