我有一个问题我没有ssh访问服务器,所以我不能使用php artisan,composer和其他命令。
我可以问他们除了修改文件或只是将php src文件复制到特定目录之外什么都不做
为了更好地理解该过程,并且由于无法通过ssh访问服务器,我正在寻找tutroial,manual或文章如何手动执行此命令。
例如,我需要执行
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\JWTAuthServiceProvider"
在这种情况下我该怎么办,我们会发现一些文档描述了我应该手动做什么来获得相同的结果。
答案 0 :(得分:1)
Laravel为工匠命令提供了方便的外观。
只需在您需要的地方使用Artisan::call('your-command')
。
示例:强>
Route::get('artisan-command/{command}', function($command) {
Artisan::call($command);
});
您的网址如下所示:http://yourhost.com/artisan-command/db:seed
更具体针对您的用例:
Route::get('vendor-publish/{provider}', function($provider) {
Artisan::call('vendor:publish', ['provider' => $provider]);
});
网址:http://yourhost.com/vendor-publish/Tymon\JWTAuth\Providers\JWTAuthServiceProvider
答案 1 :(得分:0)
您可以从应用程序执行命令行。你可以这样做:
Route::get('execute/my/command', function(){
exec("php path/to/your/project/artisan your-command",$resultLines);
Foreach($resultLines as $resultLine){
echo $resultLine;
}
});
第一个exec属性是你的命令,第二个是变量来保存结果。 我希望能帮助你