Apache配置虚拟目录和二级域名
1.配置Apache的虚拟目录Alias /site/ "E:/site/"
<Directory "E:/site/">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
2.配置二级网站域名,一般网站域名提供商也会提供,但是在apache中也可以配置:
# 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 requests without a known
# server name.
#
//去掉#号,根据需要设置
<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>
二级域名
方法二.
首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com
其次,在 httpd.conf 中打开 mod_rewrite
的后,在 httpd.conf 的最后,添加以下内容:
RewriteEngine on
RewriteMap lower case int:tolower
RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
RewriteCond ${lower case:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1
其中的/usr/local/etc/apache 是你的 apache 服务器配置文件所在路径,根据实际情况更改
然后,在这个所在路径的目录下创建一个文件: vhost.map
内容为:
www.domain.com/usr/local/www/data-dist/domain
bbs.domain.com /usr/local/www/data-dist/bbs
anyname.domain.com /usr/local/www/data-dist/anyname 以上部分都是:" 域名+空格+绝对路径"的形式
最后,在你的网站WebSite根目录 /usr/local/www/data-dist 下,创建对应目录:
domain , bbs , anyname 等等,理论上可以无限
这样,通过浏览器,访问www.domain.com时,实际上访问的就是 /usr/local/www/data-dist/domain目录下的文件同理,访问 bbs.domain.com 实际上访问的就是 /usr/local/www/data-dist/bbs 目录下的文件而且,你可以
随时更改 vhost.map 来增加、删除、修改你的2级域名和所指向的实际路径,不用重启 apache
页:
[1]