apace日常操作和配置
[root@limt modules]# /usr/sbin/apachectl -h Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file] [-C "directive"] [-c "directive"] [-k start|restart|graceful|graceful-stop|stop] [-v] [-V] [-h] [-l] [-L] [-t] [-S] Options: -D name : define a name for use in <IfDefine name> directives -d directory : specify an alternate initial ServerRoot -f file : specify an alternate ServerConfigFile -C "directive" : process directive before reading config files -c "directive" : process directive after reading config files -e level : show startup errors of level (see LogLevel) -E file : log startup errors to file -v : show version number -V : show compile settings -h : list available command line options (this page) -l : list compiled in modules -L : list available configuration directives -t -D DUMP_VHOSTS : show parsed settings (currently only vhost settings) -S : a synonym for -t -D DUMP_VHOSTS -t -D DUMP_MODULES : show all loaded modules -M : a synonym for -t -D DUMP_MODULES -t : run syntax check for config files
1 查看apache编译时加载的模块
[root@limt modules]# /usr/sbin/apachectl -l Compiled in modules: core.c prefork.c #采用的多进程模式 http_core.c mod_so.c
2 看所有可Load的模块
/usr/sbin/apachectl -t -D DUMP_MODULES
3 检查配置文件语法
[root@limt modules]# /usr/sbin/apachectl -t -f /etc/httpd/conf/httpd.conf httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.1.104 for ServerName Syntax OK
4 启动apache
[root@limt modules]# /usr/sbin/apachectl -k start -f /etc/httpd/conf/httpd.conf httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.1.104 for ServerName [root@limt modules]# ps -ef|grep http root 6011 1 0 04:26 pts/0 00:00:00 /usr/sbin/nss_pcache 294914 off /etc/httpd/alias root 6013 1 4 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf root 6015 6013 0 04:26 ? 00:00:00 /usr/bin/crlhelper 327684 6013 /etc/httpd/alias apache 6016 6013 0 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6017 6013 3 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6018 6013 2 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6019 6013 2 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6020 6013 2 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6021 6013 3 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6022 6013 3 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6023 6013 3 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf apache 6024 6013 4 04:26 ? 00:00:00 /usr/sbin/httpd -k start -f /etc/httpd/conf/httpd.conf root 6026 4496 0 04:27 pts/0 00:00:00 grep http
5 停止apache
[root@limt modules]# /usr/sbin/apachectl -k stop httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.1.104 for ServerName [root@limt modules]# [root@limt modules]# ps -ef|grep http root 6039 4496 0 04:28 pts/0 00:00:00 grep http
6 配置文件:/etc/httpd/conf/httpd.conf
Section 1: Global Environment ServerTokens OS #语法:ServerTokens Major | Minor | Min[imal] | Prod[uctOnly] | OS | Full #默认:ServerTokens Full #这个指令用来控制服务器回应给客户端的“Server:”应答头是否包含关于服务器操作系统类型和编译进的模块描述信息。 #注意:在使用ServerTokens指令时要先启用ServerSignature指令。 #apache软件安装的位置 ServerRoot "/etc/httpd" #主httpd进程(所有其他进程的父进程)的进程号文件位置 PidFile run/httpd.pid Timeout 60 #开启持久性连接功能。即当客户端连接到服务器,下载完数据后仍然保持连接状态 KeepAlive Off #一个连接服务的最多请求次数 MaxKeepAliveRequests 100 #持续连接多长时间,该连接没有再请求数据,则断开该连接。缺省为15秒 KeepAliveTimeout 15 #多进程模式 # prefork MPM <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule> #多进程多线程模式 # worker MPM <IfModule worker.c> StartServers 4 MaxClients 300 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> #监听端口 Listen 8080 #加载模块 LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule authn_file_module modules/mod_authn_file.so LoadModule authn_alias_module modules/mod_authn_alias.so #加载conf.d目录的配置模块 Include conf.d/*.conf # Section 2: 'Main' server configuration #apache运行的用户 User apache Group apache #管理员的邮件地址 ServerAdmin root@localhost ServerName指定Apache用于识别自身的名字和端口号。 # 通常这个值是自动指定的,但是我们推荐你显式的指定它以防止启动时出错 # # 如果你为你的主机指定了一个无效的DNS名,server-generated重定向将不能工作。 # 参见UseCanonicalName指令 # # 如果你的主机没有注册DNS名,在这里键入它的IP地址 # 无论如何,你必须使用它的IP地址来提供服务, # 这里使用一种容易理解的方式重定向服务 ServerName localhost:80 # # UseCanonicalName:决定Apache如何构造URLS和 SERVER_NAME 和 SERVER_PORT 的指令。 # 当设置为 “Off”时,Apache会使用用户端提供的主机名和端口号。 # 当设置为“On”,Apache会使用ServerName指令的值。 # UseCanonicalName Off #主站点的网页存储位置 DocumentRoot "/var/www/html" #错误日志文件 ErrorLog logs/error_log ServerSignature On #Section 3: Virtual Hosts #<VirtualHost *:80> # ServerAdmin webmaster@dummy-host.example.com # DocumentRoot /www/docs/dummy-host.example.com # ServerName dummy-host.example.com # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost>