域名 | 站点目录 |
www.etiantian.org | /var/html/www |
blog.etiantian.org | /var/html/blog |
bbs.etiantian.org | /var/html/bbs |
[root@httpd tools]# rpm -qa httpd
httpd-2.2.15-47.el6.centos.x86_64
[root@httpd tools]# rpm -e httpd-2.2.15-47.el6.centos.x86_64
warning: /etc/httpd/conf/httpd.conf saved as /etc/httpd/conf/httpd.conf.rpmsave
[root@httpd tools]# rpm -qa httpd
[root@httpd tools]# ls -sh httpd-2.2.27.tar.gz
7.2M httpd-2.2.27.tar.gz
[root@httpd tools]# tar xf httpd-2.2.27.tar.gz
[root@httpd tools]# cd httpd-2.2.27
[root@httpd httpd-2.2.27]# ls INSTALL README
INSTALL README
[root@httpd httpd-2.2.27]# yum -y install zlib zlib-devel
[root@httpd httpd-2.2.27]# ./configure --prefix=/application/apache2.2.27 --enable-deflate --enable-expires --enable-headers --enable-modules=most --enable-so --with-mpm=worker --enable-rewrite
[root@httpd httpd-2.2.27]# echo $?
0
[root@httpd httpd-2.2.27]# make
[root@httpd httpd-2.2.27]# make install
[root@httpd httpd-2.2.27]# ln -s /application/apache2.2.27/ /application/apache
[root@httpd httpd-2.2.27]# cd
[root@httpd ~]# /application/apache/bin/apachectl -t
httpd: apr_sockaddr_info_get() failed for httpd
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
[root@httpd ~]# /application/apache/bin/apachectl start
httpd: apr_sockaddr_info_get() failed for httpd
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[root@httpd ~]# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 76147 root 4u IPv6 77976 0t0 TCP *:http (LISTEN)
httpd 76149 daemon 4u IPv6 77976 0t0 TCP *:http (LISTEN)
httpd 76150 daemon 4u IPv6 77976 0t0 TCP *:http (LISTEN)
httpd 76151 daemon 4u IPv6 77976 0t0 TCP *:http (LISTEN)
[root@httpd ~]# /etc/init.d/iptables stop
[root@httpd ~]# setenforce 0
setenforce: SELinux is disabled
[root@httpd ~]# cd /application/apache/conf/
[root@httpd conf]# ll
total 92
-rw-r--r-- 1 root root 53011 Oct 26 21:17 mime.types
-rw-r--r-- 1 root root 12958 Oct 26 21:17 magic
drwxr-xr-x 3 root root 4096 Oct 26 21:17 original
-rw-r--r-- 1 root root 13658 Oct 26 21:17 httpd.conf
drwxr-xr-x 2 root root 4096 Oct 26 21:17 extra
过滤出生效的配置文件:
[root@httpd conf]# egrep -v "#|^$" httpd.conf
ServerRoot "/application/apache2.2.27"
Listen 80
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon
Group daemon
</IfModule>
</IfModule>
ServerAdmin you@example.com
DocumentRoot "/application/apache2.2.27/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "/application/apache2.2.27/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
ErrorLog "logs/error_log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access_log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/application/apache2.2.27/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/application/apache2.2.27/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
DefaultType text/plain
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
[root@httpd conf]# cd extra/
[root@httpd extra]# pwd
/application/apache/conf/extra
[root@httpd extra]# ls -l
total 56
-rw-r--r-- 1 root root 2859 Oct 26 21:17 httpd-autoindex.conf
-rw-r--r-- 1 root root 1753 Oct 26 21:17 httpd-dav.conf
-rw-r--r-- 1 root root 2344 Oct 26 21:17 httpd-default.conf
-rw-r--r-- 1 root root 1103 Oct 26 21:17 httpd-info.conf
-rw-r--r-- 1 root root 5078 Oct 26 21:17 httpd-languages.conf
-rw-r--r-- 1 root root 949 Oct 26 21:17 httpd-manual.conf
-rw-r--r-- 1 root root 3789 Oct 26 21:17 httpd-mpm.conf
-rw-r--r-- 1 root root 2207 Oct 26 21:17 httpd-multilang-errordoc.conf
-rw-r--r-- 1 root root 11530 Oct 26 21:17 httpd-ssl.conf
-rw-r--r-- 1 root root 817 Oct 26 21:17 httpd-userdir.conf
-rw-r--r-- 1 root root 1507 Oct 26 21:17 httpd-vhosts.conf
创建网站根目录
[root@httpd extra]# mkdir /var/html/{www,blog,bbs} -p
[root@httpd extra]# tree /var/html/
/var/html/
|-- bbs
|-- blog
`-- www
3 directories, 0 files
创建网站首页html
[root@httpd extra]# touch /var/html/{www,blog,bbs}/index.html
[root@httpd extra]# tree /var/html/
/var/html/
|-- bbs
| `-- index.html
|-- blog
| `-- index.html
`-- www
`-- index.html
3 directories, 3 files
[root@httpd extra]# for name in www blog bbs;do echo "http://$name.etiantian.org" >/var/html/$name/index.html;done
[root@httpd extra]# for name in www blog bbs;do cat /var/html/$name/index.html;done
http://www.etiantian.org
http://blog.etiantian.org
http://bbs.etiantian.org
[root@httpd extra]# cp httpd-vhosts.conf httpd-vhosts.conf_bak
修改虚拟主机配置文件
[root@httpd extra]# vim httpd-vhosts.conf
#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerAdmin 510749025@qq.com
DocumentRoot "/var/html/www"
ServerName www.etiantian.org
ServerAlias etiantian.org
ErrorLog "logs/www-error.log"
CustomLog "logs/www-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin 510749025@qq.com
DocumentRoot "/var/html/blog"
ServerName blog.etiantian.org
ErrorLog "logs/blog-error.log"
CustomLog "logs/blog-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin 510749025@qq.com
DocumentRoot "/var/html/bbs"
ServerName bbs.etiantian.org
ErrorLog "logs/bbs-error.log"
CustomLog "logs/bbs-access_log" common
</VirtualHost>
"httpd-vhosts.conf" 50L, 1503C written
修改主配置文件:添加下面内容
[root@httpd extra]# tail -6 ../httpd.conf
<Directory "/var/html">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
语法检查:
[root@httpd extra]# /application/apache/bin/apachectl -t
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
重载服务:
[root@httpd extra]# /application/apache/bin/apachectl graceful
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName