Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel 404返回丢失图像的整个页面时出错_Php_Html_Laravel_Laravel 4 - Fatal编程技术网

Php laravel 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

我正在开发Laravel4.2中的一个网站,我使用了一个定制的404页面来显示“未找到页面”。一切正常,但如果有任何未找到的资产,如图像或js文件,Chrome控制台会显示整个404页面。对于每个丢失的资产,整个404页面都会被加载,这是非常沉重的,并且不是必需的


我该怎么做才能为找不到的资产返回一条简单的消息,而不是整个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配置更新这个问题吗?