Pan*_*kaj 32 laravel laravel-5 laravel-5.1 laravel-5.2
这是关于localhost上的路由缓存
我的route.php文件中有2条路由.两者都很好.没问题.我正在学习路线:清除和路由:缓存并发现下面的一个小问题.
如果我在我的route.php文件中注释任何一个路由,然后运行下面的命令
php artisan route:cache
Run Code Online (Sandbox Code Playgroud)
这将保持路由禁用,因为路由列表现在位于缓存中.现在,转到route.php文件并尝试删除已注释的路由,然后尝试运行该已启用的URL.仍然会显示404因为我需要使用下面的命令删除缓存
php artisan route:clear
Run Code Online (Sandbox Code Playgroud)
到目前为止,一切都在localhost中被理解.没问题.
问题:如何删除服务器上的路由缓存?
Dee*_*ens 28
如果要删除服务器上的路由缓存,请删除此文件:
bootstrap/cache/routes.php
如果您想要更新它,只需运行php artisan route:cache并上传bootstrap/cache/routes.php到您的服务器.
Sak*_*kil 18
如果您是通过GIT从本地计算机上传文件,那么当您使用BASH或类似的东西连接到实时服务器时,您可以使用在本地计算机上使用的相同命令.您可以像在本地使用一样使用它.
php artisan cache:clear
php artisan route:cache
Run Code Online (Sandbox Code Playgroud)
它应该工作.
Bak*_*iar 12
你可以在 web.php 中定义一个路由
Route::get('/clear/route', 'ConfigController@clearRoute');
Run Code Online (Sandbox Code Playgroud)
并使 ConfigController.php 像这样
class ConfigController extends Controller
{
public function clearRoute()
{
\Artisan::call('route:clear');
}
}
Run Code Online (Sandbox Code Playgroud)
并转到服务器示例上的该路线 http://your-domain/clear/route
Ami*_*esh 10
对于您的案例解决方案是:
php artisan cache:clear
php artisan route:cache
Run Code Online (Sandbox Code Playgroud)
优化路线装载是生产必须的:
如果要构建具有多个路由的大型应用程序,则应确保在部署过程中运行route:cache Artisan命令:
php artisan route:cache
Run Code Online (Sandbox Code Playgroud)
此命令将所有路由注册减少为缓存文件中的单个方法调用,从而在注册数百个路由时提高了路由注册的性能.
由于此功能使用PHP序列化,因此您只能缓存专门使用基于控制器的路由的应用程序的路由.PHP无法序列化闭包.
Laravel 5清除来自路由,视图,配置和来自应用程序的所有缓存数据的缓存
我想分享我的经验和解决方案.当我使用gitlab在我的laravel电子商务网站上工作时.我突然发现一个问题,我的视图缓存在开发期间出错.我确实尝试了很多刷新和其他东西但我在视图中看不到任何更改,但最后我确实使用laravel命令解决了我的问题所以,让我们看看我添加了几个命令清除缓存来自视图,路由,配置等等
重新优化的类加载器:
php artisan optimize
Run Code Online (Sandbox Code Playgroud)
清除缓存外观值:
php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)
清除路由缓存:
php artisan route:cache
Run Code Online (Sandbox Code Playgroud)
清除视图缓存:
php artisan view:clear
Run Code Online (Sandbox Code Playgroud)
清除配置缓存:
php artisan config:cache
Run Code Online (Sandbox Code Playgroud)