当前位置: 技术问答>linux和unix
apache的问题,一直困扰我,可一直给分的。
来源: 互联网 发布时间:2014-12-09
本文导语: 我装了tar.gz版本的apache后,apache可配置并已启动,我执行ntsysv,可我发现在ntsysv里并没出现httpd的选项,我无法让httpd自启动。 如我是装的rpm的apache在ntsysv里是有httpd,可选择是启动还是不启动。 请问如何将一个程序...
我装了tar.gz版本的apache后,apache可配置并已启动,我执行ntsysv,可我发现在ntsysv里并没出现httpd的选项,我无法让httpd自启动。
如我是装的rpm的apache在ntsysv里是有httpd,可选择是启动还是不启动。
请问如何将一个程序放在ntsysv里启动。
还有一个问题
在/usr/local/sbin下有两个程序apachectl及httpd二者有什么不同。
我执行apachectl的时候,为什么格式是这样的./apachectl而不是直接用apachectl呢。
各位高手,你们是如何让一个程序自动启动的。在redhat里一般有哪几种做法。
分不够还可再加的。
如我是装的rpm的apache在ntsysv里是有httpd,可选择是启动还是不启动。
请问如何将一个程序放在ntsysv里启动。
还有一个问题
在/usr/local/sbin下有两个程序apachectl及httpd二者有什么不同。
我执行apachectl的时候,为什么格式是这样的./apachectl而不是直接用apachectl呢。
各位高手,你们是如何让一个程序自动启动的。在redhat里一般有哪几种做法。
分不够还可再加的。
|
rpm与tar 安装后都不会自动在ntsysv中加入httpd的,如果在系统安装时选了httpd则会安装,ntsysv的所有服务都在/etc/rc.d/init.d下,所以你可以自己配置一个服务,一般而言在安装后的自动产生一个启动脚本(具体位置不清楚了??),将他cp到/etc/rc.d/init.d.
还可以在/etc/rc.d/rc.local配置文件中加入/path-to-your-apapche-root/bin/apachtctl start
./apachectl 表示当前路径下的文件.
apachectl: Bourne shell script text executable
httpd: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped
两者在功能上相近.
还可以在/etc/rc.d/rc.local配置文件中加入/path-to-your-apapche-root/bin/apachtctl start
./apachectl 表示当前路径下的文件.
apachectl: Bourne shell script text executable
httpd: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped
两者在功能上相近.
|
#!/bin/sh
#
# Startup script for the Apache Web Server
#
# chkconfig: 345 85 15
# description: Apache is a World Wide Web server. It is used to serve
# HTML files and CGI.
# processname: httpd
# Path to the httpd binary.
case "$1" in
'start')
/usr/local/apache/bin/apachectl $1
;;
'stop')
/usr/local/apache/bin/apachectl $1
;;
'restart')
/usr/local/apache/bin/apachectl $1
;;
'status')
/usr/local/apache/bin/apachectl $1
;;
*)
echo "Usage: $0 { start | stop | restart | status }"
exit 1
;;
esac
这是一个配置文件.你自己拷下来,放到/etc/rc.d/init.d/下面.
名字你看着办吧,最好是httpd.
如果你想把她加到/etc/init.d/下面,那你就到/etc/init.d/下面
执行ln /etc/rc.d/init.d/httpd就可以了.
然后你分别到/etc/rc.d/下面的rc0.d/,rc1.d/,rc2.d/,rc3.d/,rc4.d/,rc5.d/,rc6.d/分别执行
ln -s ../init.d/httpd K15httpd
(在rc0.d 下执行)
ln -s ../init.d/httpd K15httpd
(在rc1.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc2.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc3.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc4.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc5.d 下执行)
ln -s ../init.d/httpd K15httpd
(在rc6.d 下执行)
这是我机器上的配置我用的是redlinux7.3
不要忘了一共有7条ln -s命令
呵呵有问题再找我
#
# Startup script for the Apache Web Server
#
# chkconfig: 345 85 15
# description: Apache is a World Wide Web server. It is used to serve
# HTML files and CGI.
# processname: httpd
# Path to the httpd binary.
case "$1" in
'start')
/usr/local/apache/bin/apachectl $1
;;
'stop')
/usr/local/apache/bin/apachectl $1
;;
'restart')
/usr/local/apache/bin/apachectl $1
;;
'status')
/usr/local/apache/bin/apachectl $1
;;
*)
echo "Usage: $0 { start | stop | restart | status }"
exit 1
;;
esac
这是一个配置文件.你自己拷下来,放到/etc/rc.d/init.d/下面.
名字你看着办吧,最好是httpd.
如果你想把她加到/etc/init.d/下面,那你就到/etc/init.d/下面
执行ln /etc/rc.d/init.d/httpd就可以了.
然后你分别到/etc/rc.d/下面的rc0.d/,rc1.d/,rc2.d/,rc3.d/,rc4.d/,rc5.d/,rc6.d/分别执行
ln -s ../init.d/httpd K15httpd
(在rc0.d 下执行)
ln -s ../init.d/httpd K15httpd
(在rc1.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc2.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc3.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc4.d 下执行)
ln -s ../init.d/httpd S85httpd
(在rc5.d 下执行)
ln -s ../init.d/httpd K15httpd
(在rc6.d 下执行)
这是我机器上的配置我用的是redlinux7.3
不要忘了一共有7条ln -s命令
呵呵有问题再找我