.htaccess 子域名到目录问题

.htaccess 子域名到目录问题

我有以下代码,该代码应该将子域重定向到 .htaccess 中的目录。我想做的是让我网站上的每个用户的个人资料都位于 username.mysite.com。我已经将 DNS 记录更改为通配符和我之前使用的代码,但由于某种原因,现在不再有效。有人能帮忙吗,谢谢。

RewriteBase /
RewriteCond s%{HTTPS} ^((s)on|s.*)$ [NC]
RewriteRule ^/*(.+/)?([^.]*[^/])$ http%2://%{HTTP_HOST}/$1$2/ [L,R=301]
RewriteCond %{HTTP_HOST} ^website\.?com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.website\.?com [NC]
RewriteCond %{REQUEST_URI} !/
RewriteRule ^(.*)$ $1 [L]
RewriteBase /
RewriteCond s%{HTTPS} ^((s)on|s.*)$ [NC]
RewriteRule ^/*(.+/)?([^.]*[^/])$ http%2://%{HTTP_HOST}/$1$2/ [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.website\.com
RewriteCond %{HTTP_HOST} ([^.]+)\.website\.com$ [NC]
RewriteCond %{REQUEST_URI} !userdir/
RewriteRule ^(.*)$ userdir/$1 [L]

答案1

你看过mod_vhost_alias? 它可立即处理此用例。

答案2

首先添加到您的 Apache 配置:

RewriteLog /tmp/rwlog.txt
RewriteLogLevel 9

对 user.website.com 进行测试,然后禁用它(这对性能有影响),让我们看看日志文件说了什么。在日志中的某个时刻,你会发现哪里出了问题……

相关内容