目录

  • Nginx安装
    • 安装支持软件
    • 创建运行用户
    • 安装Nginx
    • 配置文件
    • 使用Nginx
    • 查看
  • 配置文件nginx.conf
    • 全局配置
    • I/O事件配置
    • HTTP配置
  • Nginx访问控制
    • 控制访问IP
  • Nginx虚拟主机
    • 域名
    • IP
    • 端口

Nginx安装

安装支持软件

[root@localhost ~]# yum -y install gcc gcc-c++ pcre-devel zlib-devel make
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile* base: mirrors.cn99.com* extras: mirrors.cn99.com* updates: mirrors.cn99.com
软件包 gcc-4.8.5-44.el7.x86_64 已安装并且是最新版本
软件包 gcc-c++-4.8.5-44.el7.x86_64 已安装并且是最新版本
软件包 pcre-devel-8.32-17.el7.x86_64 已安装并且是最新版本
软件包 zlib-devel-1.2.7-19.el7_9.x86_64 已安装并且是最新版本
软件包 1:make-3.82-24.el7.x86_64 已安装并且是最新版本
无须任何处理

创建运行用户

降低风险,不建立宿主文件夹,不允许登录到shell环境

[root@localhost ~]# useradd -M -s /sbin/nologin nginx

安装Nginx

[root@localhost ~]# cd /opt/
[root@localhost opt]# ls
nginx-1.12.2  nginx-1.12.2.tar.gz  rh
[root@localhost opt]# cd nginx-1.12.2/
[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]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/    //建立软连接,之后直接可以执行nginx
[root@localhost nginx-1.12.2]# nginx -t   //检查配置文件
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost ~]# nginx  //已经做了软连接,直接启动
[root@localhost ~]# netstat -antp | grep 80   //观察端口
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      75507/nginx: master
[root@localhost ~]# killall -s QUIT nginx   //退出进程
[root@localhost ~]# netstat -antp | grep 80    //观察端口,nginx已停止
[root@localhost ~]# killall -s HUP nginx
nginx: no process found
[root@localhost ~]# nginx   //启动nginx
[root@localhost ~]# killall -s HUP nginx   //重载nginx
[root@localhost ~]# netstat -antp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      75574/nginx: master

使用Nginx

[root@localhost init.d]# cat nginx
#!/bin/bash
# chkconfig: - 99 20                            # chkcofig - “-” 表示不启用开机启动管理 (同时 若不加“#”, chkconfig add nginx 会加载不到配置)
# description: Nginx Service Control Script
COM="/usr/local/nginx/sbin/nginx"                #命令程序文件位置(nginx)
PID="/usr/local/nginx/logs/nginx.pid"            #pid文件
case "$1" in
start)$COM;;
stop)kill -s QUIT $(cat $PID);;
restart)$0 stop$0 start;;
reload)kill -s HUP $(cat $PID);;
*)echo "Usage: $0 {start|stop|restart|reload}"exit 1
esac
exit 0
[root@localhost init.d]# chmod +x nginx   //赋予执行权限
[root@localhost init.d]# chkconfig --add nginx   //添加为系统服务

查看

[root@localhost ~]# systemctl start nginx   //开启服务
[root@localhost ~]# systemctl status nginx   //查看状态nginx.service - nginxLoaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)Active: active (running) since 一 2021-06-21 19:48:55 CST; 3s agoProcess: 76060 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)Main PID: 76061 (nginx)Tasks: 2CGroup: /system.slice/nginx.service├─76061 nginx: master process /usr/local/nginx/sbin/nginx└─76062 nginx: worker process6月 21 19:48:55 localhost.localdomain systemd[1]: Starting nginx...
6月 21 19:48:55 localhost.localdomain systemd[1]: Started nginx.

配置文件nginx.conf

全局配置

#user  nobody;    //运行用户
worker_processes  1;    //工作进程数量
#error_log  logs/error.log;   //错误日志文件的相对路径
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;    //PID文件的路径

I/O事件配置

events {worker_connections  1024;   //每个进程最多处理1024个连接
}[root@localhost ~]# ulimit -n 65535  //临时修改每个进程打开的最大文件数

HTTP配置

http {include       mime.types;default_type  application/octet-stream;#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '#                  '$status $body_bytes_sent "$http_referer" '#                  '"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;   //访问日志范围sendfile        on;      //支持文件发送(发送)#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;   //连接保持超时#gzip  on;  //压缩模块server {            //Web服务的监听配置listen       80;   //默认监听端口server_name  localhost;  //网站名称#charset koi8-r;    //网页的默认字符集#access_log  logs/host.access.log  main; location / {       //根目录配置root   html;     //网站根目录的路径index  index.html index.htm;  //默认首页}error_page   500 502 503 504  /50x.html;     //内部错误的反馈页面location = /50x.html {   //错误页面配置root   html;}}}

Nginx访问控制

[root@localhost nginx]# htpasswd -c /usr/local/nginx/passwd.db   zhangsan  //生成用户和密码
New password:
Re-type new password:
Adding password for user zhangsan
[root@localhost nginx]# chmod 400 passwd.db   //修改权限
[root@localhost nginx]# chown nginx passwd.db   //更改属主
[root@localhost nginx]# ll -d passwd.db
-r-------- 1 nginx root 47 6月  22 09:03 passwd.db
location /status {auth_basic "secret";   //添加认证配置auth_basic_user_file /usr/local/nginx/passwd.db;stub_status on;access_log off;}


控制访问IP

location / {root   html;index  index.html index.htm;deny 192.168.30.254;    //禁止192.168.30.254allow all;              //允许其他所有}

Nginx虚拟主机

域名

[root@localhost ~]# tail -n 2 /etc/hosts    //测试,添加hosts文件
192.168.30.5 www.hello.com
192.168.30.5 www.world.comroot@localhost ~]# mkdir -p /var/www/html/hello    //创建网页根目录与主页
[root@localhost ~]# mkdir -p /var/www/html/world
[root@localhost ~]# echo "www.hello.com" >> /var/www/html/hello/index.html
[root@localhost ~]# echo "www.world.com" >> /var/www/html/world/index.html


IP

[root@localhost ~]# netstat -anpt | grep nginx
tcp        0      0 192.168.30.10:80        0.0.0.0:*               LISTEN      20344/nginx: master
tcp        0      0 192.168.30.5:80         0.0.0.0:*               LISTEN      20344/nginx: master
[root@localhost ~]#

端口

[root@localhost ~]# systemctl stop nginx
[root@localhost ~]# systemctl start nginx
[root@localhost ~]# netstat -anpt | grep nginx
tcp        0      0 192.168.30.5:8080       0.0.0.0:*               LISTEN      20886/nginx: master
tcp        0      0 192.168.30.5:80         0.0.0.0:*               LISTEN      20886/nginx: master
[root@localhost ~]#

遨游 Nginx服务安装相关推荐

  1. nginx服务安装 附一键安装脚本

    一.手动安装 yLinux(CentOS7.X)安装Nginx 二.一键安装脚本 #!/bin/bash#关闭firewalld防火墙 systemctl stop firewalld systemc ...

  2. [乐意黎转载]Centos 7 nginx 服务安装及配置

    前言 nginx 跟 Apache 的作用差不多,都是提供 WEB 服务,但 nginx 相对于 Apache 来说,在性能上有更好的体现,而 Apache 有稳定性方面会比 nginx 好一些,所以 ...

  3. Nginx服务安装与启动脚本配置

    实验环境:RHEL7.2 x64-176,IP地址:192.168.1.176 实验工具: 实验步骤: 1.安装nginx服务器 2.配置nginx启动脚本 3.文件设置并验证结果 +++++++++ ...

  4. Nginx 服务安装搭建

    前言: Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理 ...

  5. Linux LNMP源码架构部署 | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | 超详细

    | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | ➤安装 Nginx 服务 ➤1.关闭防火墙和安全机制 ➤2.卸载自带的httpd服务 ➤3.安装依赖包 ➤4.创建运行 ...

  6. 3-1 Nginx编译安装

    文章目录 Nginx服务 一.Nginx服务基础 1.Nginx简介 2.简述Nginx和Apache的差异 3.编译安装Nginx服务(Nginx-1.12.2) 1)环境准备:关闭防火墙,上传软件 ...

  7. Linux state 方式 安装nginx 服务

    第3章 Linux state 方式安装nginx 服务 3.1 State 方式安装nginx 1,创建相应的目录 a)Mkdir –p /srv/nginx 2,生成nginx.sls 文件 a) ...

  8. 搭建nginx服务、nginx的升级安装、Nginx配置文件的解析、web页面用户认证

    一,Nginx安装 1.安装nginx #  yum -y install gcc pcre-devel openssl-devel                              //安装 ...

  9. saltstack学习-9:批量安装nginx服务并定时更新配置(pillar)

    环境介绍: slatmaster:10.80.0.162 minion01:10.80.0.163 minion02:10.80.0.164 目标:在两台minion上安装nginx服务,并定时同步m ...

最新文章

  1. 计算机显示器黑屏首先检查,蓝快干货 | 电脑黑屏的解决办法
  2. 著名IT公司名字来由
  3. 二、传统数据库遇到的挑战
  4. Applications Manager——多个行业的游戏规则改变者
  5. 超负荷写代码 = 慢性自杀
  6. 【算法】剑指 Offer 47. 礼物的最大价值
  7. oracle 建立一个游戏库,Power Designer怎么新建Oracle数据?建立Oracle数据教程分享
  8. docker容器运行jar
  9. linear-gradient 立体背景 按钮_2020高邮亮光背景墙8D立体逼真方兴装饰了解更多
  10. HMC5883L 磁力计校准
  11. Cobaltstrike Socks 代理隧道
  12. 逍遥模拟器获取服务器信息出错,逍遥模拟器不能连上网怎么办?两招解决问题...
  13. 个人认为最low的10款鞋子
  14. 塞班java手机qq浏览器下载_手机QQ浏览器 for Symbian S60v3
  15. #MySQL#查找表中重复条目、删除重复条目
  16. 七、手写实现决策树算法
  17. 2021春深入理解计算机系统大作业——程序人生
  18. Monkey King-左偏树
  19. QT 无边窗口圆角实现
  20. 对ROS局部运动规划器Teb的理解

热门文章

  1. 【Vue源码】mustache模板引擎 - 基本使用 - 底层原理 - 手写实现
  2. 基于Vue和Django搭建前后端分离项目
  3. 无法启动MySQL服务,错误1053:服务没有及时响应启动或控制请求
  4. 电信增值服务许可证申请流程条件?
  5. 《Python 深度学习》-弗朗索瓦 肖莱-(一)双系统ubuntu及TensorFlow系统安装
  6. stylie工具轻松搞定css3抛物线动画
  7. 互联网快讯:华为与山东电力签约全球最大储能项目;苹果发布全新MacBook Pro系列产品;猿辅导加速布局素质教育
  8. Nginx windows 版本 修改句柄数 解决 maximum number of descriptors supported by select() is 1024 while waiting
  9. Android实用代码3-转自农民伯伯
  10. 基于Android Studio实现的集新闻页面+时钟页面+登录页面于一体的简单demo