如何清除服务器上的路由缓存:Laravel 5.2.37

时间:2016-06-17 10:15:47

标签: laravel laravel-5 laravel-5.1 laravel-5.2

这是关于localhost上的路由缓存

关于Localhost

我的route.php文件中有2条路由。两者都很好。没问题。我正在学习路线:清除路线:缓存并在下面发现一个小问题。

如果我在route.php文件中注释任何一个路由,然后在命令

下面运行
php artisan route:cache

这将保持路由禁用,因为路由列表现在位于缓存中。现在,转到route.php文件并尝试删除已注释的路由,然后尝试运行该已启用的URL。仍然会显示404因为我需要使用下面的命令删除缓存

php artisan route:clear

到目前为止,一切都在localhost中被理解。没问题。

在godaddy

上部署共享主机服务器之后

问题:如何删除服务器上的路由缓存?

4 个答案:

答案 0 :(得分:22)

如果要删除服务器上的路由缓存,请删除此文件:

$all = model::findFirst(1); $all->col1 = '1'; $all->col2= NULL; $all->update();

如果您想要更新它,只需运行bootstrap/cache/routes.php并将php artisan route:cache上传到您的服务器。

答案 1 :(得分:14)

如果您是通过GIT从本地计算机上传文件,那么当您使用BASH或类似设备连接到实时服务器时,您可以使用在本地计算机上使用的相同命令。您可以像使用此一样使用此命令在当地使用。

php artisan cache:clear

php artisan route:cache

它应该有用。

答案 2 :(得分:7)

您的案例解决方案是:

php artisan cache:clear
php artisan route:cache

在生产中必须优化路线负载:

如果您要构建具有许多路由的大型应用程序,则应确保在部署过程中正在运行route:cache Artisan命令:

php artisan route:cache

此命令将所有路由注册减少到一个缓存文件内的单个方法调用中,从而提高了注册数百条路由时的路由注册性能。

  

由于此功能使用PHP序列化,因此您只能缓存   仅使用基于控制器的路由的应用程序的路由。   PHP无法序列化闭包。

Laravel 5从路由,视图,配置清除缓存,并从应用程序清除所有缓存数据

我想分享我的经验和解决方案。当我使用gitlab在laravel电子商务网站上工作时。我在开发过程中突然出现一个错误,即我的视图缓存出现错误。我确实尝试了很多刷新操作以及其他操作,但是我在视图中看不到任何其他变化,但是最后我确实使用laravel命令解决了我的问题,所以,让我看看我添加了一些命令来从视图,路由,配置中清除缓存等

重新优化的类加载器:

php artisan optimize

清除缓存外观值:

php artisan cache:clear

清除路由缓存:

php artisan route:cache

清除视图缓存:

php artisan view:clear

清除配置缓存:

php artisan config:cache

答案 3 :(得分:1)

您可以在web.php中定义路由

Route::get('/clear/route', 'ConfigController@clearRoute');

并使ConfigController.php像这样

   class ConfigController extends Controller
{
    public function clearRoute()
    {
        \Artisan::call('route:clear');
    }
}

并转到服务器示例http://your-domain/clear/route

上的路由