Answers:
您要将其初始化脚本添加到适当的运行级别。通常/etc/init.d/apache2
,您可以手动运行init脚本/etc/init.d/apache2 start
来启动它。
在Gentoo上,您应该写:
rc-update add apache2 default
在Ubuntu / Debian上,这有效:
sudo update-rc.d apache2 defaults
在Red Hat Linux / Fedora / CentOS上,进行了一些谷歌搜索:
chkconfig --add httpd
从分发到分发,它略有不同,但是想法通常是相同的。基本上,所有这些命令都从中建立/etc/init.d/
到相应运行级文件夹的符号链接/etc/
。
这是最终为我工作的东西。这假设您是root用户。
/etc/init.d/apache2的内容:
#!/ bin / bash # #apache2 Apache HTTP Server的启动脚本 # #chkconfig:3 85 15 #说明:Apache是一个万维网服务器。用于服务 #HTML文件和CGI。 / usr / local / apache2 / bin / apachectl $ @
您可以通过运行/ sbin / runlevel来获取运行级别,在我的情况下为3。当然,您需要调用apachectl的版本,在我的情况下为/ usr / local / apache2 / bin / apachectl
由于以下原因:
由于已按源安装,因此/etc/init.d/目录中不会安装初始化脚本。apachectl二进制文件旨在与标准的初始化脚本选项兼容,因此您很可能可以简单地对其进行符号链接,而无需创建包装器脚本(例如ln -s / usr / local / sbin / apachectl /etc/init.d/ apache)
然后,您可以按照其他文章中概述的过程添加链接,以在正确的运行级别调用init脚本。
引用:Apache文档http://httpd.apache.org/docs/2.2/invoking.html
在启动时开始
如果希望服务器在系统重新引导后继续运行,则应将对apachectl的调用添加到系统启动文件(通常是rc.local或rc.N目录中的文件)。这将以root身份启动Apache。在执行此操作之前,请确保已正确配置服务器的安全性和访问限制。
apachectl脚本旨在像标准的SysV初始化脚本一样工作。它可以接受,启动,重新启动和停止参数,并将其转换为相应的信号到httpd。因此,您通常可以简单地将apachectl链接到适当的init目录中。但是请务必检查系统的确切要求。
这取决于您的Linux风格。假设已创建文件/etc/init.d/apache2,请尝试:
chkconfig -a apache2
要么
update-rc.d apache2 defaults
其中之一应该起作用。