diff --git a/beike/Admin/Providers/AdminServiceProvider.php b/beike/Admin/Providers/AdminServiceProvider.php index b207f477..3934ce12 100644 --- a/beike/Admin/Providers/AdminServiceProvider.php +++ b/beike/Admin/Providers/AdminServiceProvider.php @@ -28,7 +28,7 @@ class AdminServiceProvider extends ServiceProvider public function boot() { $uri = request()->getRequestUri(); - if (Str::startsWith($uri, "/installer")) { + if (is_installer()) { return; } diff --git a/beike/Helpers.php b/beike/Helpers.php index f41117c7..4d40e549 100644 --- a/beike/Helpers.php +++ b/beike/Helpers.php @@ -71,6 +71,9 @@ function admin_name(): string */ function load_settings() { + if (is_installer() || !file_exists(__DIR__ . '/../storage/installed')) { + return; + } $result = \Beike\Repositories\SettingRepo::getGroupedSettings(); config(['bk' => $result]); } @@ -220,6 +223,18 @@ function is_admin(): bool return false; } + +/** + * 是否访问安装页面 + * @return bool + */ +function is_installer(): bool +{ + $uri = request()->getRequestUri(); + return Str::startsWith($uri, "/installer"); +} + + /** * 是否为当前访问路由 * diff --git a/beike/Installer/Providers/InstallerServiceProvider.php b/beike/Installer/Providers/InstallerServiceProvider.php index a225a7dd..258062b9 100644 --- a/beike/Installer/Providers/InstallerServiceProvider.php +++ b/beike/Installer/Providers/InstallerServiceProvider.php @@ -16,8 +16,7 @@ class InstallerServiceProvider extends ServiceProvider { $this->loadRoutesFrom(__DIR__ . '/../Routes/installer.php'); - $uri = request()->getRequestUri(); - if (!Str::startsWith($uri, "/installer")) { + if (!is_installer()) { return; } diff --git a/beike/Shop/Providers/ShopServiceProvider.php b/beike/Shop/Providers/ShopServiceProvider.php index efa57edf..1d44040c 100644 --- a/beike/Shop/Providers/ShopServiceProvider.php +++ b/beike/Shop/Providers/ShopServiceProvider.php @@ -34,7 +34,7 @@ class ShopServiceProvider extends ServiceProvider public function boot() { $uri = request()->getRequestUri(); - if (Str::startsWith($uri, "/installer")) { + if (is_installer()) { return; } $this->loadRoutesFrom(__DIR__ . '/../Routes/shop.php'); diff --git a/public/index.php b/public/index.php index 3c98d6a9..536f6d44 100644 --- a/public/index.php +++ b/public/index.php @@ -3,7 +3,9 @@ use Illuminate\Contracts\Http\Kernel; use Illuminate\Http\Request; -if (!file_exists( __DIR__.'/../storage/installed') && (!isset($_SERVER['REDIRECT_URL']) || substr($_SERVER['REDIRECT_URL'], 0, 10) != '/installer')) { +if (!file_exists(__DIR__ . '/../storage/installed') + && (!isset($_SERVER['REDIRECT_URL']) || substr($_SERVER['REDIRECT_URL'], 0, 10) != '/installer') + && (stripos($_SERVER['REQUEST_URI'], '_debugbar') !== 1)) { header("Location: /installer"); exit; } @@ -25,8 +27,8 @@ define('LARAVEL_START', microtime(true)); | */ -if (file_exists(__DIR__.'/../storage/framework/maintenance.php')) { - require __DIR__.'/../storage/framework/maintenance.php'; +if (file_exists(__DIR__ . '/../storage/framework/maintenance.php')) { + require __DIR__ . '/../storage/framework/maintenance.php'; } /* @@ -40,7 +42,7 @@ if (file_exists(__DIR__.'/../storage/framework/maintenance.php')) { | */ -require __DIR__.'/../vendor/autoload.php'; +require __DIR__ . '/../vendor/autoload.php'; /* |-------------------------------------------------------------------------- @@ -53,7 +55,7 @@ require __DIR__.'/../vendor/autoload.php'; | */ -$app = require_once __DIR__.'/../bootstrap/app.php'; +$app = require_once __DIR__ . '/../bootstrap/app.php'; $kernel = $app->make(Kernel::class);