Centos 下安装 Nginx 服务器
一、使用 yum 安装 Nginx 服务器
yum install -y nginx
二、启动 Nginx 服务器
安装后的 Nginx 没有启动,先启动 Nginx 服务器
nginx
成功后使用Linux服务器的IP地址即可访问,访问到的是centos的页面,而不是以前welcom to nginx页面,但是是成功的
配置静态服务器访问路径(部署项目到80端口)
nginx 的默认配置文件路径地址在:/etc/nginx/nginx.conf
nginx 默认的测试页面的路径地址:/usr/share/nginx/html 即nginx安装成功之后,访问到的centos的页面,或welcom to nginx页面的路径
我们可以将测试页面的路径地址修改为: /data/www 并且在/data/www文件夹中放入一个index.html文件(内容是hello world)
重启nginx (nginx -s reload) 然后使用Linux服务器的IP地址即可访问到hello world页面
遇到的坑
使用systemctl status nginx查询nginx的状态,为没有启动
80端口的问题
解决方法: 1、查看端口或者查看进程
- netstat -anpt 查看所有进程
- netstat -tlnp|grep 80 查看80端口占用的进程的详细信息
2、停掉80端口服务,或者杀死进程
- kill -9 端口对应的id(比如80端口对应5014,kill -9 5014)
- kill 5014
- 如果终止不了,可以强制终止
- kill -9 5014
3、再启动nginx服务
- systemctl restart nginx 重启nginx
- systemctl status nginx 再查看nginx的状态
此时我们已经能够访问到/data/www下的项目了(默认80端口),但是我们想要部署多个项目,使用其它的端口访问其它项目
部署多个项目
一、新建新的项目的文件夹 /data/web1 /data/web2
均放入一个index.html /data/web1中的index.html写内容web1 /data/web2中的index.html写内容web2
二、进入nginx的配置文件(修改配置)
vi /etc/nginx/nginx.conf
除了80端口对应的server外,增加配置另外两个端口及端口对应的项目文件夹
配置的另外两个端口8080和2000
server {
listen 8080;
location / {
root /data/web1;
index index.html;
}
}
server {
listen 2000;
location / {
root /data/web2;
index index.html;
}
}
改完配置文件,重启nginx(nginx -s reload)
三、使用服务器IP地址加端口号访问对应的项目 遇到的坑:80端口对应的项目可以正常访问,新端口8080及2000对应的项目无法访问 原因:防火墙没有开启8080及2000端口 解决:防火墙将8080及2000端口开启
即如果想在除了80端口之外,在其他端口上,部署其它项目,需要使用防火墙命令开启新的端口
防火墙开放新端口步骤
-
查看开放的端口号 firewall-cmd --list-all
-
设置开放的端口号 firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
-
开放新的端口 sudo firewall-cmd --add-port=8080/tcp --permanent
-
重启防火墙 firewall-cmd --reload