.htaccess 将所有子域重定向到另一个文件

.htaccess 将所有子域重定向到另一个文件,.htaccess,.htaccess,我向大家问好 我有一个问题,我正在寻找解决办法。 我有一个my-website.com网站,每个在我的网站上注册的用户都会得到一个个人链接:用户名。my-website.com 同时,我的htaccess中有以下规则: RewriteEngine On RewriteCond %{HTTP_HOST} ^(.*)\.my-website\.com [NC] RewriteRule (.*) process.php/$1 [L] RewriteCond %{REQUEST_FILENAME}

我向大家问好

我有一个问题,我正在寻找解决办法。 我有一个my-website.com网站,每个在我的网站上注册的用户都会得到一个个人链接:用户名。my-website.com

同时,我的htaccess中有以下规则:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(.*)\.my-website\.com [NC]
RewriteRule (.*) process.php/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php/$1 [L]
如何使所有子域(USERNAME.my-website.com)指向process.php(process.php/USERNAME)文件,而其他URL如my-website.com/OTHER指向index.php/USERNAME?(如果其他文件不是我网站的文件或文件夹) 以下是我所做的,但它不起作用。

“但它不起作用”有点含糊不清,所以我们所能做的就是给出一些一般性的建议和建议

首先,您需要确保这些子域实际上由您的http服务器提供服务。你没有写任何关于这一点的东西,也没有写你如何主持你的网站

显然,您还必须注意http服务器是否考虑了分布式配置文件(“.htaccess”),这也是您的问题中不清楚的

考虑到这两个方面,你确实必须专注于你的重写规则。以下是您自己实现的一个变体,其中有一些更改:

RewriteEngine On

RewriteCond %{REQUEST_URI} !^/process\.php$
RewriteCond %{HTTP_HOST} ^(.*)\.my-website\.com [NC]
RewriteRule ^ /process.php/%1 [QSA,END]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/index\.php/?
RewriteRule ^/?(.*)$ /index.php/$1 [QSA,END]
您可能需要进行更多的更改。但根据你提供的模糊信息,很难更具体


开始调试重写问题的一个好方法是在http服务器内启用重写日志记录。这样可以密切监视重写引擎中实际发生的事情。请查阅相关文档:

当检测到子域时,需要一条重写规则;当请求的路径无法解析为物理文件或文件夹时,需要一条指向索引文件的重写规则。没什么特别的,没什么令人惊讶的。那么你真正的问题是什么?谢谢你的回答。我想将所有子域重定向到process.php文件,将其他URL重定向到index.php文件。请注意,有许多现有的答案如此相似的问题。您可以使用它开始实施自己的解决方案。因此,这不是一个免费的代码编写服务。我们在这里为您提供具体问题的帮助,当您有无法自行解决的细节时。但我们希望您从自己开始,尝试实现自己的解决方案。既然你已经实现了一个重写规则,为什么你不能实现这两个重写规则呢?我只是改变了我的问题。提供更多信息。请看一看。