htaccess重写规则,使domain.com/uk的行为不像文件夹


htaccess rewrite rule to not make domain.com/uk behave like folder?

我有domain.com

我的问题是,如果我写domain.com/uk,就没有文件夹,而且我不想有文件夹。我想要的是仍然打开domain.com,但在末尾添加/uk而不添加任何?之后,使用PHP,我将获得uk并运行一些if。

是否有任何方法可以只对ukde以及所有其他作为标准目录的目录执行此操作?

试试这个:

RewriteEngine on
RewriteRule ^(de|uk)$ index.php?lang=$1 [QSA,NC,L]

由于你的问题有点开放,这可能对你不起作用,但它让你知道你应该做什么。例如,如果您想要有uk/something这样的路由,我们需要在其中添加其他规则。

index.php文件中,您可以使用获取语言

$language = $_GET['lang'];

您可以在DOCUMENT_ROOT/.htaccess文件中使用以下代码:

RewriteEngine On
RewriteRule ^(?:de|uk)(/.*)?$ $1 [NC,L]

在PHP中,您可以使用$_SERVER['REQUEST_URI']来检查什么是原始请求URI(无论是/de/还是/uk/