泛解析的域名,如何将子域名自动与子域名同名的目录绑定

  1. 不想根据子域名,分别手动建立相应的virtualhost,希望能通过子域名,通过重写规则自动绑定到同名的目录。
    假设有域名domain.com,已经泛解析子域名*.domain.com到该主机的ip。web根目录为/var/www/
    我希望在访问a.domain.com时,能自动绑定/var/www/a/目录,访问b.domain.com时,能自动绑定/var/www/b/目录,以此类推,无限的对应关系。
    主要是.htaccess中的重写规则不会写

  2. 已有主机配置文件main.conf

    <VirutualHost *:80>
        DocumentRoot /var/www/
        ServerName domain.com
        ServerAlias *.domain.com</VirtualHost>

    以及/var/www/.htaccess文件

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /    RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com$    RewriteCond %{REQUEST_URL} !^/%1/    RewriteRule ^(.*)$ %1/$1</IfModule>

    此时不论以哪个域名访问,都会返回服务器内部错误

    如果把RewriteCond %{REQUEST_URL} !^/%1/这行配置中的%1替换成具体的字符串,如a,这样的话,能够实现a.domain.com绑定到/var/www/a/目录,但是其他域名依然是/var/www/目录

  3. 参考链接

希望我把我的问题表述清楚了,烦请各位大牛解答。


斯蒂芬大帝
浏览 1109回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript