Эта страница не работает, в настоящее время не может обработать этот запрос. ОШИБКА HTTP 500 в Laravel

#laravel #hosting #cpanel

#laravel #хостинг #cpanel

Вопрос:

До Laravel я использовал веб-фреймворк MVC и успешно размещал его на сервере cPanel.

Теперь я решил обновить свою платформу. Итак, я нахожу Laravel, потому что он также включает шаблоны MVC и прост в освоении для меня. Посмотрев несколько руководств, я решил разместить простой проект Laravel на поддомене сайтов моего основного домена.

Что я сделал:

На сервере:

  1. Я создаю поддомен и устанавливаю корень документа /public_html/subdomain.maindomain.com/public .
  2. Внутри папки public_html я создал папку и переименовал ее так же, как имя поддомена.

На моем компьютере

 composer global require laravel/installer
laravel new website
php artisan serve
  

Теперь я получаю ссылку на домашнюю страницу Laravel в браузере http://127.0.0.1:8000 .
Затем я добавил bootstrap.

 composer require laravel/ui
php artisan ui bootstrap --auth
npm install amp;amp; npm run dev
  

Затем я вижу ссылку для входа и регистрации на главной странице Laravel.

Теперь, увидев https://laravel.com/docs/8.x/deployment документация Laravel:

 composer install --optimize-autoloader --no-dev
php artisan config:cache
php artisan route:cache
php artisan view:cache
  

Теперь я загрузил zip-файл (все файлы внутри папки веб-сайта) и извлек его в корень документа сервера /public_html/subdomain_name/ . В папке subdomain_name у меня есть все файлы, которые были в папке моего веб-сайта на моем компьютере.

Я ничего не меняю в index.php файле общей папки, остаюсь в состоянии по умолчанию.

 require __DIR__.'/../vendor/autoload.php;
$app = require_once __DIR__.'/../bootstrap/app.php';
  

Затем я проверяю свой URL, но столкнулся This page isn’t working, subdomain.domain.com is currently unable to handle this request. HTTP ERROR 500

Комментарии:

1. почему бы вам не проверить журнал ошибок, чтобы узнать, почему это вызвало ошибку 500

2. как я могу проверить журнал ошибок? Я не знаю, как проверить, потому что я новичок в Laravel

3. журналы веб-сервера

4. еще одна вещь, где у вас есть поддомен здесь $app = require_once DIR .’/../subdomain_name/bootstrap/app.php ‘; предполагается, что это не поддомен, а имя вашего пакета laravel, имя папки, которую вы загрузили

5. @lagbox Да, я нахожу файл журнала ошибок в моей общей папке, ошибка в приведенном выше вопросе, см. Там Я обновил. Но что отлаживать на нем, это файл laravel по умолчанию.

Ответ №1:

Прежде всего загрузите laravel в корневую папку вашего домена, а не public_html и извлеките, затем переместите содержимое общедоступной папки вашего laravel, чтобы /public_html/subdomain.maindomain.com/public затем отредактировать содержимое index.php require __DIR__.'/../vendor/autoload.php'; equire_once __DIR__.'/../bootstrap/app.php'; чтобы это require __DIR__.'/../../../laravelpackagename/vendor/autoload.php' and $app = require_once __DIR__.'/../../../laravelpackagename/bootstrap/app.php'; не проверялось, но я считаю, что это должно сработать

Комментарии:

1. Для корня моего домена установлено значение /public_html . Итак, нужно ли мне переместить файл Laravel по указанному вами пути?

2. я не говорю о корне вашего поддомена, я имею в виду корень вашего домена, корень вашего домена не может быть public_html

3. это должно выглядеть похоже на /Home/laravelpackage

4. Я исправил это, @lagbox помогите мне разобраться в моей ошибке. Как я это исправил? смотрите мой ответ.

Ответ №2:

Как я решил эту ошибку:

Я заново создаю новый проект Laravel точно так же, как приведенная выше команда, и помещаю этот файл в путь к моему серверу /public_html/laravel/ . Поэтому я ничего не менял в index.php файле в общей папке, оставайтесь в состоянии по умолчанию. При этом ошибка остается неизменной (ОШИБКА HTTP 500).

Затем я просматриваю файл error_log /public_html/laravel/public/ и вижу ошибку Parse error: syntax error, unexpected '?', expecting variable (T_VARIABLE) in public_htmllaravelvendorramseyuuidsrcfunctions.php line on 34.

В менеджерах cPanel MultiPHP я выбираю свои сайты и устанавливаю версию PHP на ту же версию, что и раньше [PHP 7.3 (ea-php73)]. Затем, БУМ!! Это сработало. Я вижу домашнюю страницу моего проекта laravel в URL.

Вкратце, выбрав ту же версию PHP в менеджерах cPanel MultiPHP, помогите мне решить эту ошибку.