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