猿问

页面重定向到 404

我有一个名为 example.com 的网站,用不同的语言

当我调用 example.com/en - 它打开eng版本

如果我写 example.com/fr - 它会打开法语版本

这是一个单页项目。因此,所有内容都包含在索引中.php。我阅读网址,分解它,然后我得到请求的语言。在本地机器上一切都很好

在我的服务器上,如果我调用 example.com/en - 它试图打开一个不存在的路径,然后我得到一个404错误

我必须做些什么才能使我的代码像在本地计算机上一样工作?


慕码人8056858
浏览 174回答 3
3回答

繁花不似锦

请在 htaccess 中添加以下内容:Options +FollowSymLinksRewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^ index.php [L]注意:如果您的网络主机不允许“关注符号链接”选项,请尝试将其替换为“选项+SymLinksIfOwnerMatch”。这基本上是与Laravel框架一起使用的配置。但是,它也应该适合您,但您需要在第三个重写规则中正确设置路径。

慕码人2483693

要开始调试问题,请使用浏览器的“开发人员”菜单...一个可以让你看到“网络请求”的那个。有了它,您将能够非常快速地看到从服务器请求的URL,并且您将看到返回的响应。404所以,你的第一个检查是:*“好吧,这是我期望被请求的URL吗?*然后,如果是,请检查服务器端代码以确定它无法匹配该 URL 的原因。还要记住,当您的Web浏览器客户端请求诸如,该位将被视为(例如Apache)作为不同的。仔细查看所选 Web 服务器的配置文档,以确保它知道如何处理将要看到的 URL。(有几种方法可以做到这一点,所以我真的不能更具体,因为你没有给我们任何关于你的服务器端设置的线索......blahblah/fr/fr<Location>

ABOUTYOU

错误 404 消息的典型触发器是网站内容已被删除或移动到另一个 URL 时。出现错误消息还有其他原因。这些包括:URL 或其内容(如文件或图像)已被删除或移动(未相应地调整任何内部链接)解决这些问题在根目录中创建一个错误页面(“404.html”或“404.php”)(如果还没有现有页面)。在根目录中打开 .htaccess 文件(或根据需要创建一个),在“ErrorDocument 404 /404.html”中输入此文件并保存更改。将使用此代码生成错误页。要查看它是否有效,请尝试访问不可用的网页,并希望错误404消息应该出现在浏览器中。
随时随地看视频慕课网APP
我要回答