linux上启动两个nginx实例

这篇具有很好参考价值的文章主要介绍了linux上启动两个nginx实例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

    一台机器上启动两个nginx实例,主要是端口冲突问题,另外,如果一个是通过编译安装,另一个是拷贝的,那么还需要修改静态文件根路径。

    这里,我第一个nginx是通过源码编译安装,安装目录是默认的/usr/local/nginx。

    第二个nginx是拷贝/usr/local/nginx到/root/目录下,所以第二个nginx目录就是/root/nginx。

    这里主要需要修改第二个nginx的端口,假定我们设置为9000。

linux上启动两个nginx实例

    这里,为了区别第一个nginx,我们修改html下的index.html静态页面,内容稍作修改:

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx2!</h1>
</body>
</html>

    启动nginx,这里启动,我们需要通过-c指定配置文件,nginx指定配置文件有个毛病,不能设置相对路径,需要设置绝对路径。 

    我们通过测试命令查看配置文件:

linux上启动两个nginx实例

    我们第一次使用的是相对路径conf/nginx.conf,这个指定并没有生效,而是使用的默认第一个nginx配置文件。 这个时候,如果你继续启动,那么它会报错,说80端口已经被占用了。

    nginx启动指定配置文件,路径一定要使用绝对路径。

    当我们高高兴兴通过绝对路径指定配置文件启动,之后访问,发现访问的是第一个nginx的首页。这时候,需要修改静态文件根路径root,配置这样修改:

location / {
    root   /root/nginx/html/;
    index  index.html index.htm;
}

     之后,再启动,访问首页,403:

linux上启动两个nginx实例

     接着修改nginx.conf配置, 第一行的配置注释打开,并修改user nobody为 user root; 

    最后访问成功:

linux上启动两个nginx实例

    这样,一波三折的双nginx启动就完成了。 

    最后,通过查看进程来看看一些细节问题:

linux上启动两个nginx实例

    第一个nginx工作进程,使用的nobody启动,另一个默认使用的是root,所以上面403的问题需要修改user root;配置文件这里通过绝对路径指定,它在显示的时候也列出来了。 

    总结一下注意事项:

     1)nginx启动指定配置文件需要使用绝对路径。

     2)静态资源配置根路径,第二个配置需要使用绝对路径。使用相对路径,或者默认值,访问的还是第一个nginx静态文件。

      3)nginx访问出现403,需要修改nginx.conf配置的user属性值,改为root。

      4) 修改配置之后,让配置生效,可以直接使用命令:文章来源地址https://www.toymoban.com/news/detail-494079.html

sbin/nginx -c /root/nginx/conf/nginx.conf -s reload

到了这里,关于linux上启动两个nginx实例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux文件锁(保证只能同时启动一个实例,不同时启动多个实例)

    可以使用Linux中的进程锁来实现只能启动一个实例的功能。一种常见的方法是使用文件锁(File Locking)。 可以在程序启动时创建一个特定的文件,并尝试对该文件进行加锁。如果加锁成功,则表示程序是第一个实例,可以继续执行。如果加锁失败,则表示已经有一个实例在运

    2024年02月16日
    浏览(43)
  • 如何一台电脑操作两个adb 设备

    1.首先使用 命令 2.然后使用

    2024年01月16日
    浏览(37)
  • 一台电脑双 GitHub 账户配置,同时两个 SSH 密钥

    本人搞了两个 GitHub 账号,一个用来正常的和别人合作项目,另一个用来自己写一些代码,希望能做到两个本地账户和远程账号都完全隔离,没有联系,也不会被混淆使用。 但是这样就会有一个问题,设置本地用户 user.email 时候,如果两个 GitHub 账号仓库使用同一个本地用户

    2024年02月05日
    浏览(47)
  • linux下启动nginx

    在Linux中,nginx可能没有sbin目录,导致无法启动nginx。 ①首先创建sbin目录。 在nginx目录下,输入命令bash ./configure --prefix=/usr/local/nginx bash的作用是避免权限不足,导致无法执行以上命令 其中后面的/usr/local/nginx,可以是你的nginx目录,会将后续生成的文件存放到这个目录。 ②执

    2024年02月12日
    浏览(34)
  • 一台电脑两个网卡ip地址设置方法(全程图解设置流程步骤)

    外网为192.168.1.1/24 ; PC地址为 192.168.1.2/24 专网为192.168.52.1/24 ; 服务器地址为192.168.100.22/24 需求,电脑同时能上外网及专网 方法一、在台式机上增加双网卡 二、配置连接专网的网卡IP地址为192.168.52.2/24 ,默认网关及DNS不用填 三、添加静态路由 route add 192.168.100.0 mask 255.255.2

    2024年02月15日
    浏览(31)
  • 【Linux】Nginx+Tomcat负载均衡、动静分离、多实例部署

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 要求各 tomcat 实例配置不能有重复的端口号 第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。 第二个连接器默认监听8009端口,AJP端

    2024年02月09日
    浏览(58)
  • 一台服务器安装两个mysql、重置数据库用于测试使用

    这个方法可以让你不用安装新的数据库,就可以得到一个全新的一个数据库 缺点:原来的数据库被暂停使用 优点:数据切换速度快 更改mysql配置文件 重启mysql 使用data02为新的存储数据的地方 配置文件的datadir参数也更改成这个文件夹 对数据库进行初始化 查看初始化密码 重

    2024年02月19日
    浏览(84)
  • linux nginx启动、停止、重启命令

    2024年02月12日
    浏览(36)
  • 【最详细最全】Linux启动nginx

    1,首先找到nginx的安装目录 which nginx 会找到对应的目录,如图 2,查看进程是否存在 ps -ef|grep nginx 3,杀死进程 kill -QUIT 1282 强制停止 kill -9 1282 4,进入到nginx 的sbin 目录,启动nginx cd /usr/local/nginx/sbin/ ./nginx  ./nginx -s stop ./nginx -s quit ./nginx -s reload  4,但是上面这个命令,启动没成

    2024年02月05日
    浏览(23)
  • Linux如何查看Nginx是否启动

    介绍: Nginx是一个高性能的反向代理服务器,现在一般作为我们网站或其他Web服务的第一层代理,它负责监听80端口,用户通过浏览器发送的请求首先经过的就是Nginx服务。如果Nginx没有启动或异常结束就会影响Web服务的正常使用。 那么如何在Linux中查看Nginx是否启动呢 命令

    2024年02月12日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包