.htaccess与动态子域
我试图制作一个.htacces来模拟动态子域。 喜欢他的职位: 但是我不可能得到预期的结果 我已多次阅读该文件,网址为: 我对:RewriteCond、RewriteRule、正则表达式没有问题。 但我对子域有问题 我有这个页面:tododiversion.es 以我为例,我希望: chr.tododiversion.es==>tododiversion.es/chr/ 我将.htaccess放在www文件夹中:.htaccess与动态子域,.htaccess,subdomain,.htaccess,Subdomain,我试图制作一个.htacces来模拟动态子域。 喜欢他的职位: 但是我不可能得到预期的结果 我已多次阅读该文件,网址为: 我对:RewriteCond、RewriteRule、正则表达式没有问题。 但我对子域有问题 我有这个页面:tododiversion.es 以我为例,我希望: chr.tododiversion.es==>tododiversion.es/chr/ 我将.htaccess放在www文件夹中:www/.htaccess 文件夹“chr”位于:www/chr/ 在htacce
www/.htaccess
文件夹“chr”位于:www/chr/
在htacces中,我提出:
RewriteEngine On
# host starts with something else
RewriteCond %{HTTP_HOST} ^([^\.]+)\.tododiversion\.es$ [NC]
# rewrite
RewriteRule ^(.*)$ /chr [L]
它不起作用
我知道URLRewriting是有效的,因为我做了一个简单的测试。
我知道RewriteCond是有效的,因为我做了一个简单的测试。
我用localhost和127.0.01在我的计算机上进行了尝试,但都不起作用
如果有人能给我一些建议,那就太好了!
Chris问题可能是apache没有正确配置以处理子域。确保已将所有子域设置为转发到此目录,否则将永远不会执行.htaccess
<VirtualHost *:80>
ServerName domain.com
ServerAlias *.domain.com
DocumentRoot /var/www/domain.com
</VirtualHost>
ServerName域名.com
ServerAlias*.domain.com
DocumentRoot/var/www/domain.com
请记住在更新配置文件后重新启动Apache
有关参考信息,请参见您需要在重写规则中包含$1,以便传递域后的任何URL细节 chr.tododiversion.es/page.html==>tododiversion.es/chr/page.html 根据您提供的链接,重写规则应如下所示:
# rewrite
RewriteRule ^(.*)$ /%1/$1 [L]
我认为创建子域不是强制性的。就像我添加的参考问题一样。例如:如果子域是“用户名”。主机名。而且总是有新的用户名。我明天会研究你的链接。谢谢,我相信您需要配置Apache来正确处理子域,但我可能错了。我已经用一个配置文件示例更新了我的答案。谢谢,我今天就来试试!我试过了,但没有达到我想要的效果。在我之前提到的帖子中,听起来解决方案是可行的!我真的不明白…在apache文档中:您必须首先将DNS服务器正确配置为将这些名称映射到与服务器关联的IP地址。感谢您的帮助。这是DNS的问题。。我应该使用DNS通配符。我读到没有特殊的DNS配置是可能的。。。然而,我认为人们说,没有特殊的DNS配置是可能的,他们有正确的配置,但他们不知道更多的细节:这是有道理的。很高兴你能弄明白。如果可以的话,在这里写一个关于如何解决问题的答案,这样你就可以将这个问题标记为已解决。