搭建Nginx服务
- 导入环境包
搭建环境
-
关闭防火墙 核心守护
systemctl stop firewalld setenforce 0
-
解压包
tar -xf nginx-1.12.2.tar.gz
-
安装依赖包
yum -y install pcre-devel zlib-devel
-
创建一个不可登录用户
useradd -M -s /sbin/nologin nginx
-
切换目录,配置安装
cd nginx-1.12.2/ ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
-
编译安装
make && make install
nginx管理
-
建立nginx软连接
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
-
配置文件和语法检查
nginx -t
syntax is ok 语法已经通过
test is successful 意思测试通过
-
尝试服务的启动:
nginx netstat -anpt | grep nginx 查看服务是否启动
-
重启nginx
killall -1 nginx
-
关闭nginx
killall -3 nginx
-
为了方便管理nginx 创建一个脚本
vi /etc/init.d/nginx
#!/bin/bash
#chkconfig: 35 80 20
#description: Nginx HTTP Server
PROG="/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 1
esac
eixt 0
-
给脚本执行权限,并查看
chmod +x /etc/init.d/nginx chkconfig --add nginx chkconfig --list
-
配置建个链接 然后修改配置:
ln -s /usr/local/nginx/conf/nginx.conf /etc/ vi /etc/nginx.conf
这里会给警告,超过资源数的限制 1024 因为我们写的 4096
-
解决警告,更改系统本地打开资源数
ulimit -n ulimit -n 65535 >> /etc/rc.local ulimit -n
-
开启统计模块功能
定义一下vi /etc/nginx.conf location ~ /status{ stub_status on; access_log off; }
- 重启浏览器访问 20.0.0.18,并查看访问模块
-
进入目录查看,并查看访问情况
cd /usr/local/nginx/logs ll vi giao.com.access.log
验证nginx
yum -y install httpd-tools
htpasswd -c /usr/local/nginx/passwd.db giao
密码:123456
- 设置权限,编辑配置文件 启用认证功能 在根目录加授权方式,并重启
在浏览器验证20.0.0.18
并输入账户 giao 密码 123456
限制用户不可登录
-
修改配置文件
vi /etc/nginx.conf allow all deny ip
- 重启服务 浏览器访问IP 发现可以访问 因为他执行顺序 先允许所有再拒绝
- 顺序调换,就不可访问了
- 还要做其他功能这四行删掉
基于域名配置虚拟主机
虚拟主机和站点同时配的话 虚拟主机启动了 会优先访问虚拟主机
-
修改配置
vi /etc/nginx.conf
-
检查语法,重启
nginx -t killall -1 nginx
-
,创建文件
mkdir -p /var/www/cjy mkdir -p /var/www/jy echo "<h1>I have pen.</h1>" > /var/www/jy/index.html echo "<h1>I have apple.</h1>" > /var/www/cjy/index.html vi /etc/hosts 映射 20.0.0.18 www.cjy.com www.jy.com curl http://www.jy.com curl http://www.cjy.com
基于IP配置虚拟主机
-
添加新IP地址
-
修改配置文件
vi /etc/nginx.conf
-
检查语法 重启,查看结果
nginx -t netstat -anpt | grep nginx killall -1 nginx curl http://20.0.0.18 curl http://192.168.1.13
基于端口配置虚拟主机
-
修改配置
vi /etc/nginx.cong
- 重启,查看