首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用NginX的乘客未在Fedora注册为服务

使用NginX的乘客未在Fedora注册为服务
EN

Stack Overflow用户
提问于 2012-03-20 15:33:36
回答 2查看 1.2K关注 0票数 6

我运行的是Fedora16 32位,我用nginx安装了passenger (选项1在安装过程中,一切都为我处理)。安装正常,但nginx没有注册为服务。

我可以运行它的唯一方法是直接通过/opt/nginx/sbin/nginx。不可能通过/etc/init.d/nginx运行它

有没有办法把它注册为服务?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-06 01:49:35

创建包含以下内容的文件/etc/systemd/system/nginx.service

代码语言:javascript
复制
[Unit]
Description=Nginx
After=syslog.target network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload

[Install]
WantedBy=multi-user.target

在此之后,您可以使用以下命令进行控制:

代码语言:javascript
复制
sudo systemctl stop|start|restart nginx.service

代码语言:javascript
复制
sudo service nginx stop|start|restart

要使nginx在引导时启动,可以运行sudo systemctl enable nginx.service

票数 5
EN

Stack Overflow用户

发布于 2014-05-22 14:14:25

我写了下面的"hack“。安装了新编译的带有乘客支持的nginx,检查了从命令行启动时是否正常运行,然后安装了带有sudo yum install nginx的nginx (它是CentOS)。

最后,我在/etc文件夹中搜索*nginx*文件,并将那里的/usr/sbin/nginx替换为/opt/nginx/sbin/nginx。然后重新启动机器,并能够使用sudo service nginx start启动nginx。

当然,有一种更优雅的方法可以做到这一点,但我懒于研究如何在每个Linux发行版中注册服务。

我还在那里替换了下面的路径

  • nginx.conf
  • nginx.pid (${prog}.pid) -否则将无法停止nginx
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9782895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档