.htaccess htaccess将子域重写为php页面

.htaccess htaccess将子域重写为php页面,.htaccess,rewriting,.htaccess,Rewriting,我没有htaccess方面的经验,也没有找到解决方案 简单地说, 我想做些什么 something1.domain.com to open www.domain.com/something1.php something2.domain.com to open www.domain.com/something2.php & www.domain.com open www.domain.com/index.php 谢谢将此代码放入您的文档\u ROOT/.htaccess文件: Rewr

我没有htaccess方面的经验,也没有找到解决方案

简单地说, 我想做些什么

something1.domain.com to open www.domain.com/something1.php
something2.domain.com to open www.domain.com/something2.php

& www.domain.com open www.domain.com/index.php

谢谢

将此代码放入您的
文档\u ROOT/.htaccess
文件:

RewriteEngine On

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

这里有一种方法:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^(www)\.
RewriteCond %{HTTP_HOST} (.+)\.domain\.com
RewriteRule ^(.*)$ http://www.domain.com/%1.php [L]

我假设您已经允许在apache配置中使用指令进行重写。如果重定向必须是透明的,您必须这样做。如果您不希望这样,请删除该标志。L标志阻止进一步处理规则,并立即应用匹配的规则。

我发现AllowOverride的可能重复未启用,我在共享主机上,我不知道如何启用它。有什么帮助吗?您是如何发现AllowOverride未启用的?通常,在共享主机中,您必须联系支持人员才能对Apache配置进行任何更改。我联系了他们,他们回答说“不需要allowoverride,也不允许”。。。。有其他解决方案吗?那么,您应该能够在c-panel中将子域配置为文件夹,然后在特定于域的文件夹中使用*.php,但作为index.php。