目前我正在进行一个小项目,需要我在共享主机上托管我的laravel应用程序(请忽略为什么我没有使用VPS来托管我的laravel项目),而此托管服务提供商出于安全原因禁用了escapeshellarg()函数,所以我无法使用 php artisan config:cache
命令来清除配置缓存。
是否有任何解决方法?
config:clear
命令仅删除 bootstrap/cache/config.php
文件,因此只需手动删除该文件即可。
你可以以编程方式调用工匠命令。
Artisan::call('config:clear');
在PHP用户和FTP用户具有不同权限的设置中,这可能会有所帮助(因此,由PHP创建的文件无法通过FTP进行删除)
php artisan config:cache
使用Artisan命令
\Artisan::call('config:clear');
https://www.tutsmake.com/laravel-clear-cache-using-artisan-command-cli/
php artisan optimize:clear
因此我将解释Laravel > 7
我阅读了所有的答案,但是没有一个包含optimize:clear
,所以我想为未来的用户编写我的答案。
optimize:clear
是清除所有缓存的最强大命令
在Laravel >= 7中,您可以使用此命令清除所有缓存
命令:
php artisan optimize:clear
已编译的视图
,应用程序缓存
,路由缓存
,配置缓存
,已编译的服务和包
。Compiled views cleared!
Application cache cleared!
Route cache cleared!
Configuration cache cleared!
Compiled services and packages files removed!
Caches cleared successfully!
这是我在生产环境中重新启动队列服务器的方法
## Restart redis and terminate curent jobs
php artisan config:clear ## clear config
sudo -i
cd /var/www/html
php artisan horizon:terminate ## need to be sudo , else throw permission error
php artisan queue:restart
exit
这是一个非常好用的小型库,适用于共享主机和清晰地输入一系列命令。
只需安装一次,就可以通过一个命令轻松解决 Laravel 中的所有缓存问题。
非常方便实用。
composer require laracake/clearall --dev
php artisan laracake:clear