我想在Laravel中重新加载我的项目的自定义类,这样它们就可以访问,但是在共享的托管环境中。据我所知,到目前为止,在本地,我已经通过使用以下命令达到了预期的效果:
composer dump-autoload
然而,通过putty的SSH运行它,我得到:
-bash: composer: command not found
任何想法?
请尝试:
php composer.phar dump-autoload
因为composer
只有在全局安装时才可用,所以要放到/usr/local/bin/composer路径中。
希望有帮助!
您必须在ssh连接的远程机器上安装composer。您可以在composer主页上找到安装说明。
试试这个命令:# php-cli composer.phar --help
在某些服务器中,Composer
应该通过CLI
尝试:
php composer.phar dump-autoload
或
php composer.phar update
在webfaction是:php54作曲家。phar dump-autoload
如果您在生产环境中运行,请确保运行:
[path to composer.phar] dump-autoload --optimize
这将只自动加载必要的类,并大大提高你的Laravel应用程序的性能。
如果您使用的是共享主机,您可能需要将编写器可执行文件的完整路径放入其中。在我的箱子里也是这样。按照这个答案中的建议,SSH Shell命令没有找到(composer, npm),我设法从bash脚本运行composer:
which composer // In remote machine manually
该命令显示了远程服务器上安装composer的路径。您还可以执行以下命令查看路径:
echo $PATH // you can surely add it
如果composer不在$PATH上,你可以添加它,如果共享主机给你足够的特权,或者你可以在你的bash脚本中使用完整路径调用composer来运行命令。在我的例子中,它是运行:
$/opt/cpanel/composer/bin/composer install