centos7安装配置nginx,解压包方式
一、安装
需要安装几个插件
1.pcre、pcre-devel
yum install -y pcre pcre-devel
2.zlib安装
yum install -y zlib zlib-devel
3.安装openssl
yum install -y openssl openssl-devel
4.安装gcc
yum -y install gcc
安装nginx,下载包
wget http://nginx.org/download/nginx-1.9.9.tar.gz
如果提示wget 未找到命令
用下面命令装一下
sudo yum install wget
继续下载nginx包。
解压nginx
tar -zxvf nginx-1.9.9.tar.gz
cd 到解压后的目录,cd nginx-1.9.9
进入解压后的文件夹,执行下面命令
./configure
make && make install
启动nginx
/usr/local/nginx/sbin/nginx
验证一下有没有成功
ps -ef|grep nginx
以上算是解压成功了
编辑配置文件
输入命令
vi /lib/systemd/system/nginx.service
然后insert
[Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target [Service] Type=forking ExecStartPre=/usr/local/nginx/sbin/nginx -t ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
注意 ExecStartPre ExecStart ExecReload 这三个改成自己的地址
参数解释:
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
启动服务
systemctl enable nginx
systemctl daemon-reload
查看nginx状态
systemctl status nginx
二、配置
首先查一下你nginx的配置文件地址,从网上yum安装的和本地上传安装的路径会有所不同
解压包的方式,会生成到 /usr/local/nginx 这个目录下面。
编辑这个配置文件
vi /usr/local/nginx/conf/nginx.conf
在配置文件最后面 增加这段命令。,路径根据你nginx的配置文件路径而定
include /usr/local/nginx/conf/conf.d/*.conf;
esc :wq 保存退出
在对应目录下 新建文件夹 conf.d
mkdir conf.d
以后新建项目需要反向代理端口,就可以直接在这里新增后缀为.conf的文件即可。
server { listen 9988; server_name 10.100.101.128; location / { proxy_pass http://10.100.101.128:8899/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
cd 到nginx文件目录
/usr/local/nginx/sbin
重新加载配置文件
./nginx -s reload
然后浏览器
三、报错
查看nginx服务状态
systemctl status nginx.service
如果报错了,下面这个错误。需要kill掉进程
查看进程
ps -e | grep nginx
kill进程
kill 6676
重新查看nginx 服务
如果是下面这种错误,重启一下服务器然后莫名其妙的就好了。。。
四,无法通过IP访问nginx的80端口
1.查看防火墙所有开放端口
firewall-cmd --zone=public --list-ports
2.开放端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口 firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口 firewall-cmd --reload # 配置立即生效
3.关闭防火墙
如果端口多 嫌麻烦,可以用这个,就是不安全
systemctl stop firewalld.service
永久关闭防火墙
systemctl disable firewalld.service
开机自启动防火墙
systemctl enable firewalld.service
4.查看防火墙状态
firewall-cmd --state
5.查看监听的端口
netstat -lnpt
6.检查端口被哪个进程占用
netstat -lnpt |grep 端口
一、解压包方式nginx命令
# 进入nginx的执行目录 cd /usr/local/nginx/sbin # 启动nginx ./nginx # 停止nginx(强制停止) ./nginx -s stop # 退出nginx(安全退出) ./nginx -s quit # 重新加载配置文件(修改过配置文件后使用) ./nginx -s reload
二、yum方式nginx命令
systemctl start nginx.service //(启动nginx服务) systemctl stop nginx.service //(停止nginx服务) systemctl enable nginx.service //(设置开机自启动) systemctl disable nginx.service //(停止开机自启动) systemctl status nginx.service //(查看服务当前状态) systemctl restart nginx.service //(重新启动服务) systemctl list-units --type=service //(查看所有已启动的服务)