php - 404使用$ _SERVER ['REQUEST_URI'处理错误]

标签 php html error-handling http-status-code-404

我为网站使用不同的语言。所以结构很简单:

root / => 404.php
       => template_404.php

root/subdir/ =>(language_xy)404.php 

在我的htaccess文件中,我使用了重定向到404.php的方法,以防找不到页面。

在该404.php中,我使用$_SERVER['REQUEST_URI']来获取输入的地址,该地址将被回显给用户。

根据默认的浏览器语言,404.php将与语言文件一起重定向到其subdir文件夹。

就像这样:

输入的URL错误=>重定向到404.php =>读取URL和默认语言=>重定向到语言方向(language_xy)404.php =>从根加载template_404.php并回显错误的URL。

现在的问题是,我想要像example.com/langauge_xy/(language_xy)404.php这样的干净URL。这就是为什么我不想使用$_GET将输入的URL发送到(language_xy)404.php的原因。我以为我可以将输入的URL保存到404.php上的SESSION中,而只需在template_404.php上回显即可。第一次可以使用,但是由于某种原因重新加载页面时,SESSION的内容已更改。我不知道为什么会这样。 $_SESSION['url']仅使用一次。

因此,如果有人可以给我提示如何解决此问题,我将不胜感激。

非常感谢。

最佳答案

您可以这样做,也可以创建一个语言文件,并使用一个404.php文件根据 session 中的语言提供不同的内容。

查找用户语言:detect user language in PHP - stable solution

语言切换:Am I breaking any "php good practice" in the following php array which deals with 3 (human) languages?

关于php - 404使用$ _SERVER ['REQUEST_URI'处理错误],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16415916/

相关文章:

php - PDO错误sql状态42000

javascript - 导航菜单的不自然移动

javascript - 用于在应用程序中处理和捕获错误的工具/解决方案

php - PHP忽略特定的编译错误

Php数据库-内容加密/解密

php - Microsoft Graph API(日历)间歇性 503 错误

php - OO PHP 误解

javascript - 如何获取地理位置并以html形式返回值

javascript - 如何让我的范围 slider 在 asp.net mvc 3 上的触摸屏上工作

android - Volley - NetworkImageView 有时不显示错误图像?