Страницы отсутствуют после миграции на новый сервер Laravel 5.8

#php #laravel #laravel-5.8

#php #laravel #laravel-5.8

Вопрос:

Старый клиент попросил меня перенести веб-сайт на новый сервер в digital Ocean, подальше от их старой хостинговой компании. У меня настроен весь сервер, настроена и связана база данных и т. Д., И я смог выполнить обычные команды для сборки в рабочей среде.

У меня действительно странная проблема, я не уверен, в чем ее основная причина, и я ничего не вижу в журналах ошибок об этом.

Домашняя страница сайта загружается правильно, css и js загружаются правильно, но как только я пытаюсь перейти на другую страницу (единственная другая страница, на которую пользователь может перейти с домашней страницы, — это страница входа в систему, это что-то вроде интрасети), я получаю ошибку 404.

Может кто-нибудь указать мне, что искать в отношении того, что может быть причиной отсутствия страницы входа в систему? Та же проблема, если я ввожу URL-адрес страницы сброса пароля.

Для сборки я запустил:

 php artisan down
git reset HEAD --hard
git pull

composer install
npm install

npm run production

php artisan cache:clear
php artisan up

 

затем изменил разрешения на правильные chown и chmod для файлов сайта и файлов хранилища.

Ни одна из вышеперечисленных команд не выдала мне никаких ошибок, поэтому я публикую здесь, я не уверен, куда идти, если ошибок нет! Ни в одной из найденных мной статей нет такой же проблемы, как у меня. Спасибо!

Отредактируйте, чтобы добавить: Я знаю, что подключение к базе данных работает, поэтому проблема не в том, что база данных не подключена. Если бы это было проблемой, страница входа все равно отображалась бы, но я бы получил сообщение об ошибке при попытке входа в систему

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

1. вы получаете Laravel 404 или веб-сервер 404?

2. @lagbox server 404 (nginx, если это вообще поможет)

3. похоже, у вас не включены красивые URL-адреса, поэтому он не возвращается к перезаписи на index.php

4. @lagbox спасибо, я сейчас этим займусь!

5. laravel.com/docs/5.8/deployment#nginx

Ответ №1:

В итоге я решил это, заменив

try_files $uri $uri/ /index.php/$query_string =404;

с

try_files $uri $uri/ /index.php$is_args$args;