server. php
<?php
$uri = urldecode(
parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)
);
if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
return false;
}
require_once __DIR__.'/public/index.php';
public / index. php
<?php
if(!file_exists('../.env')){
$GLOBALS["error_type"] = "env-missing";
include('error_install.php');
exit(1);
}
if (version_compare(PHP_VERSION, '7.2.5') < 0){
$GLOBALS["error_type"] = "php-version";
include('error_install.php');
exit(1);
}
changeEnvironmentVariable();
function changeEnvironmentVariable()
{
$path = '../.env';
if (file_exists($path)) {
$current = file_get_contents($path);
$original = [];
if (preg_match('/^DB_PASSWORD=(.+)$/m', $current, $original)) {
$current = preg_replace('/^DB_PASSWORD=.+$/m', 'DB_PASSWORD="' . $original[1] . '"', $current);
if (strpos($original[1], '"') === false) {
file_put_contents($path, $current);
}
}
}
}
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
Я пытаюсь развернуть свой проект laravel на сервере, но не могу запустить, когда я нажимаю, например, https://example.com
, тогда он показывает структуру каталогов, которую я проверил, но не могу найти ошибку, и когда я запускаю server.php
файл с доменом, он показывает .env file missing! You forgot to upload the .env file.
, где у меня уже есть файл .env
в my root dir, и я также попытался заменить его на .evn.example
, но он по-прежнему показывает структуру каталогов.
Я не понимаю, где я делаю не так? Пожалуйста, помогите мне решить эту проблему.
Спасибо