404页面基于语言

时间:2018-02-19 12:01:36

标签: php .htaccess http-status-code-404

我的网站结构如下 根/ EN / 根/它/ 管理我使用的语言

$supported_languages = array(
    'English'  => 'EN',
    'Italiano' => 'IT',
);

使用包含定义的两个语言文件,并且大部分工作正常,但404页面仅显示基于我使用的htaccess的一种语言(example.com/it/the-wrong-page)。毋庸置疑,我不知道如何正确编写htaccess规则。我尝试了以下两种不同的方法。

这只显示意大利语(显然)

ErrorDocument 404 /404-error.php

<If "%{REQUEST_URI} =~ /it\x2F.*/">
    ErrorDocument 404 /404-error-it.php
</If>

这只显示英文

ErrorDocument 404 /404-error.php

<If "%{REQUEST_URI} =~ /it\x2F.*/">
    ErrorDocument 404 /404-error-it.php
</If>
<If "%{REQUEST_URI} =~ /en\x2F.*/">
    ErrorDocument 404 /404-error.php
</If>

我猜最后一条指令会覆盖第一条指令。如何根据sub(即/ en和/ it)使用语言显示404?

为了完成信息,我还有一个不在语言subs(root / sub)下的子。

0 个答案:

没有答案