我花了过去 2 天搜索和了解 .htaccess 以将所有子域重定向到用户文件夹而不更改 url,但我一直遇到 3 个小问题。我真的很感激一些帮助
问题1)
如果我去http://www.example.com/users/foo
它会自动将 url 重定向到http://foo.example.com/
但如果我去http://www.example.com/users/foo/dashboard.php
它什么也不做,而不是重定向到http://foo.example.com/dashboard.php
这是我使用的代码:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /users/(.+)/\ HTTP/
RewriteRule ^users/([^/]+)/(.*)$ http://$1.example.com/$2 [R=301,L]
问题2)
如果我去http://foo.example.com/dashboard.php
它从http://www.example.com/users/foo/dashboard.php
但是如果我foo.example.com
在地址栏中输入(在 Firefox 中)它(有时)会自动重定向到www.foo.example.com
,我可以阻止www
前缀吗?
这是代码
RewriteCond %{REQUEST_URI} !^/users/
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST} ([^.]+)\.example\.com
RewriteRule (.*) /users/%1/$1 [L]
问题3)
活动网站位于文件夹中,http://www.example.com/website
但应该在 url 上可见http://www.example.com/
(就像我从http://www.example.com/users/foo
url 上获取信息一样http://foo.example.com/
)。