通配符子域重定向到文件


Wildcard subdomain redirecting to a file

我正试图将foo.bar.com重定向到bar.com/foo.php,但我不知道从哪里开始,到目前为止,其他一切都让我失败了。我在StackOverflow上尝试了很多东西,但似乎都不起作用(只是各种Apache错误)。

我已经在cPanel中设置了一个通配符子域,但我真的不确定该从哪里开始。.htaccess是最好的选择吗?

编辑:我还想将URL从bar.com/foo.php重写为foo.bar.com

您可以在DOCUMENT_ROOT/.htaccess文件中使用以下通用规则:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^(?:www'.)?domain'.com$ [NC]
RewriteCond %{HTTP_HOST} ^(?!www'.)([^.]+)'.(.+)$ [NC]
RewriteRule ^/?$ http://%2/%1.php [L,R=302]

编辑:要隐藏重写的URL(内部重写),请使用以下命令:

RewriteCond %{HTTP_HOST} !^(?:www'.)?domain'.com$ [NC]
RewriteCond %{HTTP_HOST} ^(?!www'.)([^.]+)'.(.+)$ [NC]
RewriteRule ^/?$ %1.php [L]