监控Apache

来源:互联网 发布:农行软件开发中心待遇 编辑:程序博客网 时间:2024/06/10 12:43
3.1运行Apache
3.1.1手动启动Apache服务器
/usr/local/apache2/bin/httd
注意:通过ps aux | grep httpd查看到的进程中,发现只有一个httpd进程是属于root,它是永远不响应任何用户请求的。而只是负责创建httpd的子进程,这些子进程才是提供Web访问的服务进程。而且这些子进程的名字会因为系统的不同而不同,但在同一个系统上都是统一的。
3.1.2自动启动apache服务器
BSD风格的脚本:
SysV风格:
3.1.3停止Apache服务器
(1)、通过ps aux | grep httpd查看所有的httpd进程,然后用kill -9 pid一一结束进程
(2)、cat /usr/local/apache/logs/httpd.pid然后把这个文件中查到的进程号(这个进程号也就是主服务器进程号,即root用户的apache进程号  )
            kill -9 查到的主进程号
3.1.4使用apachectl程序控制Apache
apache start、stop、restart 、graceful、 graceful-stop 、configtest、 status、 fullstatus
这里知道graceful比restart好很多,真的,所以用graceful重启好很多。graceful-stop也同样比stop好很多。configtest解析并检查配置文件语法。 
3.1.5运行多个Apache服务器
一台物理系统运行多个版本的Apache服务器,解决方案是在编译时为不同版本的Apache指定不同的安装目录即可。
一台物理系统运行多个同一版本的Apache服务器,解决方案是启动时指定不同的配置文件httpd -f /usr/local/apache/conf/httpd.conf
分析:运行多个Apache服务器的关键是为不同的Apache服务器指定唯一的端口,而这可以通过指定不同的配置文件
3.1.6使用 <ifDefine>容器实现不同的配置
在配置文件加几组不同的<ifDefine name>……<ifDefine>容器,在<ifDefine name>中name是一个变量名称,只有当name为真时,才会执行<ifDefine name>到<ifDefine>容器之间的命令。如果name为假,则直接忽略。这样我们可以通过httod -D参数来控制使用那一个name 下的命令
<IfDefine ssl>
Listen 443
DocumentRoot "/home/jonsk/"
<IfDefine>
使用它的方法是/usr/local/apache/bin/httpd -D ssl
这就是一种一个配置文件,实现不同配置apache服务器启动的方式
3.1.7httpd 命令行参数
-D、-d -f -c -C- e -E -v -V -h -l -L -t  -S -t-D -M -t
3.2监控Apache
3.2.1Apache自带的web监视器
1.mod_status模块,动态显示当前服务器的动态的运行状态。
2.mod_info模块,主要提供服务器附加的配置信息
但这两种模块不推荐使用,会存在安全问题。
3.2.2使用第三方的工具来监控Apache
1、zabbix
2、Nagios


常见问题及解答
apache启动后通过浏览器访问提示:“您没有权限访问次服务器上的/”
三种可能情况:
(1)Apache不仅需要所在ServerRoo目录的权限,还需要ServerRoot的上一层目录的权限
(2)使用SELinux也可能会导致以上错误
(3)Apache在配置文件中没有设置访问权限


apache的根目录被我搞坏了
一、般自启动一是在rc.local上写脚本
二、是用运行级别,运行级别也有两种情况,一是用chkconfig命令,设置相应运行级别的自启动,要用运行级别的话。
如果chkconfig用不了。另外一种,首先把启动脚本加到int.d目录里,另外在相应启动级别目录里生成一个指向放在int.d那个位置的脚本的软链接。

我不知道让源码安装的脚本使用chkconfig是怎样,
首先把启动脚本加到int.d目录里,另外在相应启动级别目录里生成一个指向放在int.d那个位置的脚本的软链接dou yao ma ?。
0 0