2

我在 laravel 4 中有一个奇怪的问题,因为每次我尝试刷新页面更改都不会出现。肯定不是浏览器的缓存。任何帮助表示赞赏

4

5 回答 5

3

我遇到了同样的问题并找到了答案:

尝试在 php.ini 中禁用 OPcache

如果您使用 MAMP,可以在 /Applications/MAMP/bin/php/php5.5.3/conf/php.ini 中找到它

并且不要忘记重新启动 MAMP。

于 2013-11-12T07:52:34.507 回答
1

我的后退按钮也有类似的问题,最后我注意到,在我的 Laravel 项目中没有Cache-Control发送标题。浏览器决定缓存这个页面并且没有做一个新的请求。

要发送此标头,您可以app/filters.php像这样修改文件:

App::after(function($request, $response)
{
  $response->headers->set('Cache-Control', 'no-store, no-cache, must-revalidate');
  $response->headers->set('Pragma', 'no-cache');
}
于 2013-11-12T10:39:05.687 回答
0

有时 OPcache 方法不起作用,我使用此代码确保每次加载页面时所有更改都可见:

app/filters.php添加这个App::before(function($request)

$cachedViewsDirectory=app('path.storage').'/views/';
    $files = glob($cachedViewsDirectory.'*');
    foreach($files as $file) {
        if(is_file($file)) {
            if($file!='.gitignore') {
                @unlink($file);
            }
        }
    }
于 2015-02-03T17:02:25.290 回答
0

您是否尝试过 -composer dump-autoload 和 -php artisan dump-autoload 从文档根目录?

于 2013-07-20T16:36:25.450 回答
0

这可能是缓存引擎的问题。如果您通过 composer 更新,请尝试从 github 获取 /app 文件夹更新(尤其是配置文件),有时该文件夹中的文件会发生更改。您也可以尝试 chmod 777storage文件夹。

于 2013-07-21T13:37:27.950 回答