Php laravel 404返回丢失图像的整个页面时出错
我正在开发Laravel4.2中的一个网站,我使用了一个定制的404页面来显示“未找到页面”。一切正常,但如果有任何未找到的资产,如图像或js文件,Chrome控制台会显示整个404页面。对于每个丢失的资产,整个404页面都会被加载,这是非常沉重的,并且不是必需的Php laravel 404返回丢失图像的整个页面时出错,php,html,laravel,laravel-4,Php,Html,Laravel,Laravel 4,我正在开发Laravel4.2中的一个网站,我使用了一个定制的404页面来显示“未找到页面”。一切正常,但如果有任何未找到的资产,如图像或js文件,Chrome控制台会显示整个404页面。对于每个丢失的资产,整个404页面都会被加载,这是非常沉重的,并且不是必需的 我该怎么做才能为找不到的资产返回一条简单的消息,而不是整个404页面?公用文件夹中的.htaccess配置为让Laravel处理所有不是文件或目录的内容。对于public的子目录,例如public/css,一种简单的更改方法是将.ht
我该怎么做才能为找不到的资产返回一条简单的消息,而不是整个404页面?公用文件夹中的
.htaccess
配置为让Laravel处理所有不是文件或目录的内容。对于public
的子目录,例如public/css
,一种简单的更改方法是将.htaccess
文件放在此目录中,然后禁用该文件夹的Larvel路由:
public/css/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine Off
</IfModule>
发动机熄火
然后,当您尝试访问一个不存在的文件时,您将获得Web服务器的默认未找到页面
旁注:当然,您也可以使用Laravel和一些程序逻辑来实现这一点,但这似乎是最干净的方法,因为它甚至不启动Laravel,从而节省响应时间和服务器资源
此外,您可能应该尽最大努力只请求实际存在的文件,以避免404。我找到了解决方案。以下nginx设置起作用,对于未找到的文件显示nginx 404,对于未找到的url显示自定义页面
rewrite_log on;
try_files $uri $uri/ @rewrite;
location @rewrite {
rewrite ^/(.*)$ /index.php?_url=/$1;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
我怎么能把这个和nginx一起用?嗯,我不知道。我对nginx没有太多经验。如果我发现了什么,我会做一些挖掘和更新…你能用你的nginx配置更新这个问题吗?