Sep
3

利用Rewrite实现Apache免重起添加虚拟主机

映射表的使用
利用Rewrite实现Apache免重起添加虚拟主机
首先,在 httpd.conf 中打开 mod_rewrite(去掉该行前面的#)

然后在httpd.conf的最后添加以下内容:

RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1

其中的 /usr/local/etc/apache 是你的 apache 服务器配置文件所在路径,根据实际情况更改。
然后,在这个所在路径的目录下创建一个文件: vhost.map
内容为:
www.domain1.com /usr/local/www/data-dist/domain1
www.domain2.com /usr/local/www/data-dist/domain2
www.domain3.com /usr/local/www/data-dist/domain3

以上部分都是:" 域名+空格+绝对路径" 的形式。

最后,在你的网站根目录 /usr/local/www/data-dist 下,创建对应目录:

domain1 , domain2 , domain3 等等,理论上可以无限。

这样,通过浏览器,访问 www.domain1.com 时,实际上访问的就是 /usr/local/www/data-dist/domain1目录下的文件。同理,访问 www.domain2.com 实际上访问的就是 /usr/local/www/data-dist/domain2 目录下的文件。这样你就可以随时更改 vhost.map 来增加、删除、修改虚拟主机而不用重启 apache了。

共计 0 条评论

NAME:

required

E-MAIL:

required, will not be published

HOMEPAGE:

CONTENT: