帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
服务器资讯 / 香港服务器租用 / 香港VPS租用 / 香港云服务器 / 美国服务器租用 / 台湾服务器租用 / 日本服务器租用 / 官方公告 / 帮助文档
同一台服务器安装多个nginx(总结)
发布时间:2024-03-08 18:03:10   分类:帮助文档
同一台服务器安装多个nginx(总结)

  背景:在同一台服务器上同时安装测试环境和生产环境,我们项目经理为了俩个项目更独立分别在不同目录下都安装了tomcat和nginx。在我部署项目的时候,后端没出什么太大问题,前端由于俩个nginx,在运行时出了一些问题折腾了很长时间。
  总结:在同一台服务器上安装多个nginx完全没有问题,但需要注意的问题有:
        1.每个Nginx实例需要使用不同的端口号和配置文件,以避免端口冲突和配置文件混淆。可以在安装时通过指定不同的安装目录和配置文件路径来实现;
        2.需要在系统中为每个Nginx实例配置独立的系统服务,以便在系统启动时自动启动。可以通过创建不同的systemd服务来实现。例如,可以创建一个名为nginx1.service的服务文件来启动第一个Nginx实例,并创建一个名为nginx2.service的服务文件来启动第二个Nginx实例;
      3.要注意系统资源的分配和管理。在同一台服务器上运行多个Nginx实例可能会占用较多的系统资源,包括CPU、内存和磁盘空间等。因此,在部署多个Nginx实例时,需要确保系统资源足够,并进行合理的资源分配和管理,以避免系统负载过高和性能下降等问题。
    遇见的问题:
1.(主要问题)由于安装了多个nginx,在输入启动命令时,系统不知道执行哪一个,需输入指定路径
    eg.(1)检查不同的配置文件路径
/usr/local/nginx/conf/nginx.conf # 第一个 Nginx 实例的配置文件
/usr/local/nginx2/conf/nginx.conf # 第二个 Nginx 实例的配置文件
         (2) 每个配置文件应该包含唯一的端口号,如下所示:
# /usr/local/nginx/conf/nginx.conf
http {
server {
listen 80;
server_name localhost;
...
}
}

# /usr/local/nginx2/conf/nginx.conf
http {
server {
listen 8080;
server_name localhost;
...
}
}

       (3)最后启动每个 Nginx 实例时,分别使用不同的端口号和配置文件路径:
# 启动第一个 Nginx 实例
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

# 启动第二个 Nginx 实例
/usr/local/nginx2/sbin/nginx -c /usr/local/nginx2/conf/nginx.conf

若想要同时运行多个 Nginx 实例,需将上述命令添加到自己的启动脚本中
2.在执行重新加载配置文件命令时,会有sudo: nginx: command not found报错
# 重新加载 Nginx 配置文件(root用户)

sudo nginx -s reload

# 报错

sudo: nginx: command not found

# 原因:这可能是因为在root用户的PATH环境变量中没有包含nginx可执行文件的路径。可以尝试在命令前加上完

# 整的路径,例如:

sudo /usr/local/nginx/sbin/nginx -s reload

# 或者将nginx可执行文件所在的路径添加到root用户的PATH环境变量中,例如:

export PATH=$PATH:/usr/local/nginx/sbin

      或者在加载配置文件之前,先检查配置文件是否有语法错误,命令如下:
sudo nginx -t
3.查看运行中的nginx进程
ps -ef | grep nginx

# 输出结果

nobody 13701 13700 0 10:13 ? 00:00:00 nginx: worker process

root 20973 13070 0 11:02 pts/1 00:00:00 grep --color=auto nginx

# 进程所有者(第一列) 进程ID(第二列) 父进程ID(第三列) CPU占用率(第四列)

# 内存占用率(第五列) 进程状态(第六列) 进程启动时间(第七列) 进程名称(第八列)

# 最后一行是 grep 命令本身的进程信息,可以忽略
4.在Nginx配置文件中,搜索所有包含listen关键字的行,可以使用以下命令:
sudo grep -R "listen" /etc/nginx/




香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价