sherifsheremetaj/laravel-web-console

Laravel应用的网络控制台

v1.0 2023-10-10 12:24 UTC

This package is auto-updated.

Last update: 2024-09-10 14:20:41 UTC


README

LaravelWebConsole

Latest Version on Packagist StyleCI TESTED OS Total Downloads

Laravel Web Console是一个用于Laravel应用的包,允许用户通过浏览器连接到服务器。

Screenshot

这个包有什么用?

尽管云托管正在兴起,许多人使用VPS/专用服务器托管,但大多数人仍然使用没有SSH连接的共享托管。使用这个包,您可以从浏览器中执行shell命令。通过使用Laravel中间件功能,您可以保护您的系统免受外部威胁。

功能

  • 启用/禁用自定义登录
  • 多账户支持
  • 选择主目录
  • 为多个账户选择主目录
  • 自定义密码散列

支持的Laravel版本

  • 5.7.*
  • 5.8.*
  • 6.*
  • 7.*
  • 8.*

安装

手动

  • 下载最新版本:https://github.com/alkhachatryan/laravel-web-console/releases/latest
  • 将压缩文件上传到服务器。
  • 将文件解压缩到 /vendor/alkhachatryan/laravel-web-console(不带版本号)
  • 将此包的维护者添加到composer的autoloaders中 -- 在 /vendor/composer/autoload_namespaces.php 中添加以下行
     'Alkhachatryan\\LaravelWebConsole\\' => array($vendorDir . '/alkhachatryan/laravel-web-console/src'),
    -- 在 /vendor/composer/autoload_psr4.php 中添加以下行
     'Alkhachatryan\\LaravelWebConsole\\' => array($vendorDir . '/alkhachatryan/laravel-web-console/src'),
  • 更新 /config/app.php,并将服务提供者添加到提供者数组中
    Alkhachatryan\LaravelWebConsole\LaravelWebConsoleServiceProvider::class,
  • 清除缓存:删除以下文件:/bootstrap/cache/packages.php /bootstrap/cache/services.php

或通过Composer

$ composer require alkhachatryan/laravel-web-console

配置

发布配置文件

  • 将 /vendor/alkhachatryan/laravel-web-console/config 文件复制到您的 /config 文件夹

    或通过命令行

    php artisan vendor:publish --tag=webconsole
  • 编辑 /config/laravelwebconsole.php 文件,在 .env 文件中创建您的凭证。

        // Single-user credentials (REQUIRED)
        'user' => [
            'name' => env('CONSOLE_USER_NAME', 'root'),
            'password' => env('CONSOLE_USER_PASSWORD', 'root')
        ],

!!! 注意 !!!! 这些用户凭证不是您的服务器用户凭证。您可以在这里输入您想要的任何内容。这种自定义登录方式是保护措施的小补充。无论如何,您都可以禁用它。将 no_login 值设置为 TRUE

     // Disable login (don't ask for credentials, be careful)
    'no_login' => true,

用法

use Alkhachatryan\LaravelWebConsole\LaravelWebConsole;

class HomeController extends Controller
{
    public function index() {
       return LaravelWebConsole::show();
    }
}

变更日志

有关最近更改的更多信息,请参阅 变更日志

安全

如果您发现任何安全问题,请通过电子邮件 info@khachatryan.org 反馈,而不是使用问题跟踪器。

致谢

包含开源工具

许可证

MIT。有关更多信息,请参阅 许可证文件