在Linux系统中搭建Nginx网站服务
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,关于Nginx一款高性能、轻量级Web服务软件稳定性高系统资源消耗低对HTTP并发连接的处理能力高单台物理服务器可支持30000 ~ 50000个并发请求Nginx编译安装Nginx源码包下载安装支持
千家信息网最后更新 2026年11月02日在Linux系统中搭建Nginx网站服务
关于Nginx
一款高性能、轻量级Web服务软件
稳定性高
系统资源消耗低
- 对HTTP并发连接的处理能力高
单台物理服务器可支持30000 ~ 50000个并发请求
Nginx编译安装
- Nginx源码包下载
安装支持软件
[root@localhost opt] yum install gcc gcc-c++ make pcre-devel zlib-devel -y创建运行用户、组
[root@localhost opt] useradd -M -s /sbin/nologin nginx编译安装Nginx
[root@localhost ~] mount.cifs //192.168.100.10/lnmp /mnt/ //将本地nginx源码包挂载到mnt目录下[root@localhost ~] cd /mnt/[root@localhost mnt] tar zxvf nginx-1.12.2.tar.gz -C /opt/ //解压源码包到opt目录 [root@localhost mnt] cd /opt[root@localhost opt] cd nginx-1.12.2/ //进入nginx安装包目录[root@localhost nginx-1.12.2] ./configure \--prefix=/usr/local/nginx \ //指定安装路径--user=nginx \ //指定程序用户--group=nginx \ //指定组--with-http_stub_status_module //关联状态统计模块 [root@localhost nginx-1.12.2] make && make install //配置、安装[root@localhost nginx-1.12.2] cd /usr/local/nginx/sbin //进入nginx安装后的命令目录[root@localhost sbin] ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //建立软链接到sbin目录[root@localhost sbin] nginx //执行开启服务[root@localhost conf]# netstat -ntap | grep 80 //查看服务端口是否开启 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 31755/nginx: master [root@localhost sbin] systemctl stop firewalld.service //关闭防火墙[root@localhost sbin] setenforce 0 //关闭增强性安全功能[root@localhost sbin] yum install elinks -y //安装检测网站工具[root@localhost sbin] elinks http://localhost //检测网站是否开启
优化运行控制
[root@localhost sbin]# vim /etc/init.d/nginx //编辑运行控制脚本#!/bin/bash# chkconfig: - 99 20# description: Nginx Service Control ScriptPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" in start) $PROG ;; stop) kill -s QUIT $(cat $PIDF) ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PIDF) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1esacexit 0:wq[root@localhost sbin]# cd /etc/init.d[root@localhost init.d]# chmod +x nginx //给脚本添加执行权限[root@localhost init.d]# chkconfig --add nginx //将脚本添加到系统环境[root@localhost init.d]# service nginx start //使用service控制服务开启配置文件
- 全局配置
#user nobody;worker processes 1;#error_ log logs/error.log;#pid logs/nginx.pid;I/0事件配置
events { use epoll; worker_connections 4096;}HTTP配置
http { ...... access_log logs/access.log main; sendfile on; ...... keepalive_timeout 65; server { listen 80; server name www.bt.com; charset utf-8; location / { root html; index index.html index.php; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html;}}}Nginx的访问状态统计
启用HTTP STUB STATUS状态统计模块
- 配置编译参数时添加
--with-http_ stub_ status_ module nginx -V查看已安装的Nginx是否包含HTTP_ STUB_ _STATUS模块
[root@localhost init.d]# cd /usr/local/nginx/conf/ //进入配置文件目录[root@localhost conf]# vim nginx.conf //编辑配置文件...//省略部分内容...server { listen 80; server_name www.kgc.com; //编辑域名 charset utf-8; //编辑字符串格式为utf-8 #access_log logs/host.access.log; //注释access日志文件 location / { root html; index index.html index.htm; } location /status { stub_status on; //开启功能统计模块 access_log off; }...//省略部分内容...:wq //保存退出[root@localhost conf]# yum install bind -y //安装DNS服务[root@localhost conf]# vim /etc/named.conf //常规配置DNS功能...//省略部分内容...options { listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; };...//省略部分内容...:wq[root@localhost conf]# vim /etc/named.rfc1912.zones...//省略部分内容...zone "kgc.com" IN { type master; file "kgc.com.zone"; allow-update { none; };}; ...//省略部分内容...:wq[root@localhost conf]# cd /var/named/[root@localhost named]# cp -p named.localhost kgc.com.zone[root@localhost named]# vim kgc.com.zone$TTL 1D@ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 127.0.0.1www IN A 192.168.144.133:wq[root@localhost named]# systemctl start named[root@localhost named]# service nginx stop[root@localhost named]# service nginx start- 在客户机中打开浏览器输入域名
www.kgc.com/status访问网站统计记录

授权的访问控制
- 配置步骤与Apache基本一致
- 生成用户密码认证文件
- 修改主配置文件对相应目录,添加认证配置项
- 重启服务,访问测试
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.confserver { listen 80; server_name www.kgc.com; charset utf-8; #access_log logs/host.access.log; location / { auth_basic "secret"; //插入设置密码验证 auth_basic_user_file /usr/local/nginx/passwd.db; //添加条目设置密码验证文件存放目录 root html; index index.html index.htm; } location /status { stub_status on; access_log off; }:wq[root@localhost ~]# yum install httpd-tools -y //安装生成密码设置文件已加载插件:fastestmirror, langpacksbase | 3.6 kB 00:00:00 extras | 2.9 kB 00:00:00 ...//省略部分内容...已安装: httpd-tools.x86_64 0:2.4.6-90.el7.centos 作为依赖被安装: apr.x86_64 0:1.4.8-5.el7 apr-util.x86_64 0:1.5.2-6.el7 完毕![root@localhost ~]# htpasswd -c /usr/local/nginx/passwd.db test01 //创建密码验证文件New password: //输入密码Re-type new password: //再次输入 Adding password for user test01 //创建用户成功[root@localhost ~]# cat /usr/local/nginx/passwd.db //查看创建的密码文件test01:$apr1$T22NmXdU$yE8iwUxpaHcR95ZNosCUK0 //用户密码信息[root@localhost ~]# service nginx stop //停止nginx服务[root@localhost ~]# service nginx start //启动nginx服务[root@localhost ~]# netstat -ntap | grep 80 //查看端口是否开启tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 8624/nginx:- 再客户机中测试授权访问控制
配置
文件
服务
密码
目录
内容
部分
用户
控制
统计
模块
网站
功能
源码
状态
脚本
编译
输入
运行
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技有限公司经营范围
工业互联网科技新基建
腾讯阿里互联网科技
百单互联网科技有限公司
奔汉互联网科技
碳银互联网科技有限公司
互联网科技小额贷款
四川狮子座互联网科技
海南科技产业互联网平台
成都互联网科技公司100强
港股科技和互联网
上海宁丞科技互联网
辽宁互联网新科技
乌苏新华互联网科技做什么的
东莞新华互联网科技学校
深圳市罗太互联网科技有限公司
每天都有哪些好的互联网科技
雨阳互联网卡科技有限公司
下一代互联网重大应用科技园
科技发展第三阶段互联网时代
喔噻互联网科技有限公司
左右互联网络科技
广州恒生互联网科技有限
特约风豹互联网科技为什么扣费
互联网金融科技名词解释
普陀区互联网教育科技管理办法
互联网科技的前景
互联网金融金融科技
互联网科技创业计划的风险分析
广东猫王互联网科技有限公司电话