我为我的网站使用不同的语言。所以结构很简单:
root / => 404.php
=> template_404.php
root/subdir/ =>(language_xy)404.php
404.php
在我的 htaccess 文件中,如果找不到页面,我会使用重定向。
404.php
我$_SERVER['REQUEST_URI']
用来获取将回显给用户的输入地址。
根据默认浏览器语言,404.php
将重定向到包含语言文件的子目录文件夹。
所以它是这样的:
输入了错误的 URL => 重定向到404.php
=> 读出 URL 和默认语言 => 重定向到语言方向=>从根(language_xy)404.php
加载并回显错误的 URL。template_404.php
现在的问题是我想要干净的 URL 之类的example.com/langauge_xy/(language_xy)404.php
. 这就是为什么我不想使用$_GET
将输入的 URL 发送到(language_xy)404.php
. 我想我可以将输入的 URL 保存到 SESSION on 中404.php
,然后简单地回显 on template_404.php
。这是第一次工作,但由于某种原因重新加载页面时,会话的内容发生了变化。我不知道为什么会这样。$_SESSION['url']
只使用一次。
因此,如果有人可以给我有关如何解决此问题的提示,我将不胜感激。
非常感谢。