4

嘿,我的主人绝对是可怕的。由于某些奇怪的原因,在 cPanel 中创建子域根本不起作用,而且他们的支持热线总是很忙。我想我可以通过使用 .htaccess 来解决这个问题。我确信这并不难,但我对 mod_rewrite 有点陌生,在过去 5 小时内搜索几乎没有成功。情况如下:

/home/user/public_html 自动重定向到http://www.example.com

由于我在 public_html 中使用 CMS,它已经在 .htaccess 中添加了规则,以将 example.com/ 之后的任何不熟悉的内容重定向到“找不到页面”

/home/user/subdomain 需要重定向到http://subdomain.example.com

我应该如何创建子域重定向到绝对路径?或者如何在我的 .htaccess 中添加异常

4

2 回答 2

2

我怀疑您能否让您的子域在您的 public_html 文件夹之外运行(尽管我不是服务器管理员)。通常这需要修改 DNS 或调整服务器的配置。您是否尝试过创建子目录并重写对子域的调用?例如,这放置在 public_html 目录中的 .htaccess 中:

RewriteCond %{HTTP_HOST} ^subdomain\.example\.com$
RewriteRule (.*) /subdomain/$1 [L]

我不确定这是否可行(从不需要自己测试),但它比尝试将位于 webhost 指定的目录之外的文件作为域文件的位置更有可能起作用。

祝你好运!

于 2009-09-19T22:00:12.280 回答
1

试试这个规则:

RewriteCond %{REQUEST_URI} !^/home/user/
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteCond %{HTTP_HOST} ^([^/.]+)\.example\.com$
RewriteRule ^ /home/user/%1%{REQUEST_URI} [L]

但是您的网络服务器已经需要进行配置,以便将每个请求重定向到这个特定的虚拟主机。foobar.example.com

于 2009-05-17T15:12:39.120 回答