Nginx安装后常用功能如何配置

发布时间 - 2023-05-15 00:00:00    点击率:

1.主配置文件与虚拟主机分离

如果虚拟主机很多的话,进行分离看起来会更方便,还可以按功能、业务进行划分,下面以两个虚拟主机为例。

完整的除去空行和注释后的配置文件:

[root@nginx-01 conf]# egrep -v "#|^$" nginx.conf.bak 
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

创建/app/nginx/conf目录下虚拟主机配置目录

mkdir extra

利用server模块创建www和bbs两个虚拟站点

[root@nginx-01 conf]# cat -n nginx.conf
[root@nginx-01 conf]# sed -n '10,20p' nginx.conf
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

www站点

[root@nginx-01 conf]# cat extra/www.conf 
    server {
        listen       80;
        server_name  www.yygg.com;
        location / {
            root   html/www;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

bbs站点

[root@nginx-01 conf]# cat extra/bbs.conf 
    server {
        listen       80;
        server_name  bbs.yygg.com;
        location / {
            root   html/bbs;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html/bbs;
        }
    }

主配置文件配置(nginx.conf)

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
include extra/www.conf;
include extra/bbs.conf;
}

检查配置

[root@nginx-01 conf]# /app/nginx/sbin/nginx -t
nginx: the configuration file /app/nginx-1.18.0//conf/nginx.conf syntax is ok
nginx: configuration file /app/nginx-1.18.0//conf/nginx.conf test is successful

创建站点目录

[root@nginx-01 conf]# mkdir /app/nginx/html/{www,bbs}
[root@nginx-01 conf]# echo "http://www.yygg.com" >>/app/nginx/html/www/index.html
[root@nginx-01 conf]# echo "http://bbs.yygg.com" >>/app/nginx/html/bbs/index.html
[root@nginx-01 conf]# echo "192.168.1.5 www.yygg.com bbs.yygg.com" >>/etc/hosts

启动服务并测试

[root@nginx-01 conf]# /app/nginx/sbin/nginx
[root@nginx-01 conf]# curl www.yygg.com
http://www.yygg.com
[root@nginx-01 conf]# curl bbs.yygg.com
http://bbs.yygg.com

2.虚拟主机别名设置

以www站点为例,设置别名
所谓别名就是除了主域名外额外设置一个或多个域名

www.yygg.com设置别名yygg.com

[root@nginx-01 conf]# cat extra/www.conf 
    server {
        listen       80;
        server_name  www.yygg.com yygg.com;
        location / {
            root   html/www;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html/www;
        }
    }

重启nginx测试

[root@nginx-01 conf]# /app/nginx/sbin/nginx -s reload
[root@nginx-01 conf]# cat /etc/hosts
192.168.1.5 www.yygg.com bbs.yygg.com yygg.com
[root@nginx-01 conf]# curl yygg.com
http://www.yygg.com

3.Nginx status状态信息配置

状态信息记录使用的是`ngx_http_stub_status_module`模块实现

输入/app/nginx/sbin/nginx -V检查编译是否有上述模块:

nginx version: nginx/1.18.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --user=nginx --group=nginx --prefix=/app/nginx-1.18.0/ --with-http_stub_status_module --with-http_ssl_module

创建一个status的虚拟主机,方式参考标题1,status.conf配置文件如下:

    server {
        listen       80;
        server_name  status.yygg.com;
        location / {
            stub_status on;
            access_log off;
        }
    }

主配置文件nginx.conf追加status虚拟主机配置

sed -i '11 i include extra/status.conf;' nginx.conf

检查语法并重启nginx

/app/nginx/sbin/nginx -t
/app/nginx/sbin/nginx -s reload

配置hosts解析

192.168.1.5 status.yygg.com

访问status.yygg.com查看

[root@nginx-01 conf]# curl status.yygg.com
Active connections: 1 
server accepts handled requests
 4 4 4 
Reading: 0 Writing: 1 Waiting: 0

显示结果解析:

Active connections: 1  ##正处理的连接数为1server  ##共处理了4次连接accepts  ##共创建了4次握手handled requests  ##共处理了4次请求Reading  ##读取到客户端的Header信息数Writing  ##返回给客户端的Header信息数Waiting  ##NGinx已经处理完正在等候下一次请求的指令的驻留连数

4.增加错误日志

error_log语法:

error_log    file    level;

关键字不变,file是日志存放位置,level是错误日志级别

通常只用warn|error|crit三个级别

配置错误日志配置,在nging.conf文件中worker_processes 1;下添加

error_loglogs/error_log;

没错,就这一行!


# nginx  # Error  # 虚拟主机  # 配置文件  # 为例  # 重启  # 的是  # 客户端  # 还可以  # 多个  # 更方便  # 创建一个 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现文件上传和存储?(本地与S3配置)  PHP正则匹配日期和时间(时间戳转换)的实例代码  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Laravel怎么在Blade中安全地输出原始HTML内容  Laravel如何实现一对一模型关联?(Eloquent示例)  Laravel如何为API编写文档_Laravel API文档生成与维护方法  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  网站图片在线制作软件,怎么在图片上做链接?  Laravel怎么清理缓存_Laravel optimize clear命令详解  Laravel如何使用.env文件管理环境变量?(最佳实践)  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  Thinkphp 中 distinct 的用法解析  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解  详解阿里云nginx服务器多站点的配置  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  EditPlus中的正则表达式实战(6)  网站制作壁纸教程视频,电脑壁纸网站?  如何在宝塔面板创建新站点?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  详解CentOS6.5 安装 MySQL5.1.71的方法  HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  Windows Hello人脸识别突然无法使用  Python图片处理进阶教程_Pillow滤镜与图像增强  ,在苏州找工作,上哪个网站比较好?  iOS正则表达式验证手机号、邮箱、身份证号等  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  怎样使用JSON进行数据交换_它有什么限制  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  深圳网站制作平台,深圳市做网站好的公司有哪些?  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  北京专业网站制作设计师招聘,北京白云观官方网站?  微信小程序 require机制详解及实例代码  如何在阿里云虚拟主机上快速搭建个人网站?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Laravel怎么实现验证码(Captcha)功能  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Windows10如何更改计算机工作组_Win10系统属性修改Workgroup  公司网站制作价格怎么算,公司办个官网需要多少钱?  如何快速搭建安全的FTP站点?  Laravel怎么为数据库表字段添加索引以优化查询  详解Android——蓝牙技术 带你实现终端间数据传输  Laravel模型事件有哪些_Laravel Model Event生命周期详解  南京网站制作费用,南京远驱官方网站?