Nginx php error page

Содержание
  1. Настройка пользовательских страниц ошибок Nginx в CentOS 7
  2. Требования
  3. Создание пользовательской страницы ошибок
  4. Error 404: Not found 🙁 » | sudo tee /usr/share/nginx/html/custom_404.html echo « I have no idea where that file is, sorry. Are you sure you typed in the correct URL? » | sudo tee -a /usr/share/nginx/html/custom_404.html echo « Oops! Something went wrong. » | sudo tee /usr/share/nginx/html/custom_50x.html echo « We seem to be having some technical difficulties. Hang tight. » | sudo tee -a /usr/share/nginx/html/custom_50x.html Итак, теперь у вас есть две страницы ошибок, которые должен использовать сервер в случае, если пользователь запрашивает недоступный контент. Настройка Nginx для обслуживания пользовательской страницы ошибок Теперь нужно настроить Nginx для поддержки только что созданных страниц при возникновении соответствующей ошибки. Для этого нужно отредактировать виртуальные хосты (Nginx называет их блоками server). В CentOS 7 основной блок server находится в файле /etc/nginx/nginx.conf. В данном руководстве дл примера показано, как отредактировать основной хост; если вы используете другие хосты, выполните инструкции раздела в файлах этих хостов. sudo nano /etc/nginx/nginx.conf Внутри файла найдите блок кода, который определяет контекст сервера. Теперь нужно задать Nginx новые страницы ошибок. Настройка страницы 404 Конфигурационный файл Nginx в системе CentOS определяет страницу 404 при помощи директивы error_page. Нужно изменить поведение сервера, чтобы при возникновении ошибки 404 вместо стандартной страницы появлялась пользовательская. Нужно отредактировать соответствующий блок файла, чтобы убедиться, что директива root указывает на локальную файловую систему и что файл доступен только по внутренним редиректам Nginx (т.е, не может запрашиваться непосредственно клиентами): /etc/nginx/nginx.conf http . . . server . . . error_page 404 / custom_404.html ; location = / custom_404.html root /usr/share/nginx/html ; internal; > . . . > > Как правило, редактировать директиву root нет необходимости. Однако здесь она задана явно, чтобы страницы ошибок обслуживались даже в случае перемещения веб-контента и каталога document root в другую точку. Настройка страницы ошибок 500 Затем можно добавить директивы для обслуживания пользовательской страницы ошибок 500. Это делается точно таким же образом; используйте следующий код: /etc/nginx/nginx.conf http . . . server . . . error_page 404 /custom_404.html; location = /custom_404.html root /usr/share/nginx/html; internal; > error_page 500 502 503 504 / custom_50x.html ; location = / custom_50x.html root /usr/share/nginx/html; internal; > location /testing fastcgi_pass unix:/does/not/exist; > > > В конце файла добавлен фиктивный путь к FastCGI, чтобы протестировать работу страницы 500. В данном случае возникнет ошибка, поскольку бэкэнда не существует. При запросе страницы на экране появится код ошибки 500 и соответствующая пользовательская страница. Сохраните и закройте файл. Перезапуск Nginx и тестирование настроек Проверьте синтаксис файла на наличие ошибок при помощи команды: Если команда обнаружила в файле ошибки, исправьте их, прежде чем продолжить. Если ошибок нет, перезапустите веб-сервер: sudo systemctl restart nginx Теперь попробуйте открыть домен или IP сервера в браузере и запросить несуществующий файл, чтобы проверить настройку страницы 404: http:// server_domain_or_IP /thiswillerror на экране появится страница со следующим сообщением: Error 404: Not found 🙁 I have no idea where that file is, sorry. Are you sure you typed in the correct URL? Если запросить местонахождение FastCGI, на экране появится страница ошибки 502 Bad Gateway: http:// server_domain_or_IP /testing Oops! Something went wrong. We seem to be having some technical difficulties. Hang tight. После тестирования удалите фиктивный путь к FastCGI из настроек Nginx. Заключение Теперь сервер Nginx обслуживает пользовательские страницы ошибок для сайта. В целом, пользовательские страницы ошибок – это отличный способ помочь посетителям сайта разобраться, в чём дело, предоставить им всю необходимую информацию об ошибке и полезные ссылки (не забудьте убедиться, что ссылки работают даже в случае возникновения ошибок). Источник Пользовательские страницы ошибок в Nginx Nginx – это высокопроизводительный веб-сервер, способный гибко и качественно обслуживать контент. Оформляя страницы своего сайта, вы наверняка захотите создать пользовательский стиль для каждого его элемента, включая и страницы об ошибках, которые появляются, если контент недоступен. В этом руководстве мы покажем, как настроить такие страницы на Nginx. Требования Виртуальный сервер с пользователем sudo (мы используем сервер Ubuntu 22.04, настроенный по этому мануалу). Предварительно установленный веб-сервер Nginx (инструкции по установке вы найдете здесь). Создание пользовательской страницы об ошибке Пользовательские страницы ошибок, которые мы используем здесь, предназначены для демонстрационных целей. Если у вас есть свои страницы, используйте их. Поместите пользовательские страницы ошибок в каталог /usr/share/nginx/html, корневой каталог Nginx по умолчанию. Там мы создадим страницу для ошибки 404 под названием custom_404.html и для общих ошибок уровня 500 под названием custom_50x.html. Примечание: Дальнейшие строки можно использовать, если вы тренируетесь на наших страницах. В противном случае не забудьте указать свои данные. Сначала создайте HTML-файл для своей пользовательской страницы 404 с помощью nano или другого текстового редактора: sudo nano /usr/share/nginx/html/custom_404.html Вставьте туда код, который определяет пользовательскую страницу: Error 404: Not found 🙁 I have no idea where that file is, sorry. Are you sure you typed in the correct URL? Сохраните и закройте файл. Теперь создайте файл HTML для страницы 500: sudo nano /usr/share/nginx/html/custom_50x.html Вставьте в файл следующее: Oops! Something went wrong. We seem to be having some technical difficulties. Hang tight. Сохраните и закройте файл. В данный момент у вас есть две пользовательские страницы ошибок, которые будут отображаться на сайте, когда запросы клиентов приводят к различным ошибкам. Настройка Nginx для поддержки пользовательских страниц Итак, пора сообщить Nginx, что он должен использовать эти страницы всякий раз, когда возникают соответствующие ошибки. Откройте тот файл server-блока в каталоге /etc/nginx/sites-enabled, который вы хотите настроить. Здесь мы используем стандартный файл по имени default. Если вы настраиваете свои собственные страницы, пожалуйста, убедитесь, что используете правильный файл: sudo nano /etc/nginx/sites-enabled/default Теперь нужно направить Nginx на соответствующие страницы. Настройка пользовательской страницы 404 Используйте директиву error_page, чтобы при возникновении ошибки 404 (когда запрошенный файл не найден) обслуживалась созданная вами пользовательская страница. Создайте location-блок для вашего файла, где вы сможете установить его правильное расположение в файловой системе и указать, что файл доступен только через внутренние перенаправления Nginx (не запрашиваемые клиентами напрямую): Обычно устанавливать root в новом блоке location не нужно, так как он совпадает с root в блоке server. Однако здесь мы явно указываем, что страницы ошибок нужно обслуживать, даже если вы перемещаете свой обычный веб-контент и связанный с ним root в другое место. Настройка страницы ошибок 50х Затем добавьте новые директивы, чтобы Nginx, столкнувшись с ошибками уровня 500 (это проблемы, связанные с сервером), мог обслуживать другую пользовательскую страницу, которую вы создали. Здесь мы будем следовать той же формуле, которую вы использовали в предыдущем разделе. На этот раз мы насторим несколько ошибок уровня 500, чтобы все они использовали страницу custom_50x.html. Внизу мы также добавим фиктивный FastCGI, чтобы вы могли протестировать свою страницу с ошибкой уровня 500. Это выдаст ошибку, потому что бэкэнд на самом деле не существует. Так вы можете убедиться, что ошибки уровня 500 обслуживают вашу пользовательскую страницу. Отредактируйте файл /etc/nginx/sites-enabled/default следующим образом: server < listen 80 default_server; . . . error_page 404 /custom_404.html; location = /custom_404.html < root /usr/share/nginx/html; internal; >error_page 500 502 503 504 /custom_50x.html; location = /custom_50x.html < root /usr/share/nginx/html; internal; >location /testing < fastcgi_pass unix:/does/not/exist; >> Сохраните и закройте файл, когда закончите. Перезапуск Nginx и тестирование Чтобы проверить синтаксис ваших файлов, введите: Если команда обнаружила какие-либо ошибки, исправьте их, прежде чем продолжить. Перезапустите Nginx, если ошибок нет: sudo systemctl restart nginx Теперь, если вы перейдете на домен или IP-адрес вашего сервера и запросите несуществующий файл, вы должны увидеть настроенную вами страницу 404: Перейдите в расположение вашего FastCGI и вы получите ошибку 502 Bad Gateway, что является ошибкой уровня 50х: Вернитесь в конфигурационный файл и удалите фиктивный FastCGI. Заключение Теперь ваш веб-сервер может обслуживать пользовательские страницы ошибок. Это простой способ персонализировать ваш сайт и обеспечить лучший пользовательский опыт даже при возникновении ошибок. Один из способов оптимизировать эти страницы – разместить на них дополнительную информацию или полезные ссылки для пользователей. Если вы сделаете это, убедитесь, что ссылки доступны даже при возникновении соответствующих ошибок. Источник
  5. Oops! Something went wrong.
  6. Настройка Nginx для обслуживания пользовательской страницы ошибок
  7. Настройка страницы 404
  8. Настройка страницы ошибок 500
  9. Перезапуск Nginx и тестирование настроек
  10. Заключение
  11. Пользовательские страницы ошибок в Nginx
  12. Требования
  13. Создание пользовательской страницы об ошибке
  14. Error 404: Not found 🙁 I have no idea where that file is, sorry. Are you sure you typed in the correct URL?
  15. Oops! Something went wrong.
  16. Настройка Nginx для поддержки пользовательских страниц
  17. Настройка пользовательской страницы 404
  18. Настройка страницы ошибок 50х
  19. Перезапуск Nginx и тестирование
  20. Заключение
Читайте также:  Использование глобальных переменных питон

Настройка пользовательских страниц ошибок Nginx в CentOS 7

Nginx – это высокопроизводительный и гибкий веб-сервер.

При проектировании веб-страниц часто возникает необходимость настроить каждую часть контента, которую будут видеть пользователи, в индивидуальном порядке. Это касается и страниц ошибок, которые возникают в случае, если контент по какой-либо причине недоступен. В этом руководстве показано, как настроить Nginx для отображения пользовательских страниц ошибок в системе CentOS 7.

Требования

Для выполнения данного руководства нужно иметь учётную запись пользователя с привилегиями sudo; подробнее об этом можно узнать в руководстве «Начальная настройка сервера CentOS 7».

Кроме того, нужно предварительно установить Nginx; чтобы получить инструкции по установке данного веб-сервера, читайте эту статью.

Создание пользовательской страницы ошибок

Для начала нужно создать свою страницу ошибок. Используйте инструкции данного раздела, чтобы создать собственную страницу.

Пользовательские страницы ошибок должны храниться в каталоге /usr/share/nginx/html (это стандартный каталог document root веб-сервера Nginx в системе CentOS). Создайте страницу 404 по имени custom_404.html и одну общую страницу для ошибок с кодом 500 по имени custom_50x.html. Для тестирования можно использовать следующий код; в противном случае рекомендуется заменить текст страницы своим контентом.

echo «

Error 404: Not found 🙁

» | sudo tee /usr/share/nginx/html/custom_404.html
echo «

I have no idea where that file is, sorry. Are you sure you typed in the correct URL?

» | sudo tee -a /usr/share/nginx/html/custom_404.html
echo «

Oops! Something went wrong.

» | sudo tee /usr/share/nginx/html/custom_50x.html
echo «

We seem to be having some technical difficulties. Hang tight.

» | sudo tee -a /usr/share/nginx/html/custom_50x.html

Итак, теперь у вас есть две страницы ошибок, которые должен использовать сервер в случае, если пользователь запрашивает недоступный контент.

Настройка Nginx для обслуживания пользовательской страницы ошибок

Теперь нужно настроить Nginx для поддержки только что созданных страниц при возникновении соответствующей ошибки. Для этого нужно отредактировать виртуальные хосты (Nginx называет их блоками server). В CentOS 7 основной блок server находится в файле /etc/nginx/nginx.conf. В данном руководстве дл примера показано, как отредактировать основной хост; если вы используете другие хосты, выполните инструкции раздела в файлах этих хостов.

sudo nano /etc/nginx/nginx.conf

Внутри файла найдите блок кода, который определяет контекст сервера. Теперь нужно задать Nginx новые страницы ошибок.

Настройка страницы 404

Конфигурационный файл Nginx в системе CentOS определяет страницу 404 при помощи директивы error_page. Нужно изменить поведение сервера, чтобы при возникновении ошибки 404 вместо стандартной страницы появлялась пользовательская. Нужно отредактировать соответствующий блок файла, чтобы убедиться, что директива root указывает на локальную файловую систему и что файл доступен только по внутренним редиректам Nginx (т.е, не может запрашиваться непосредственно клиентами):

/etc/nginx/nginx.conf
http . . .
server . . .
error_page 404 / custom_404.html ;
location = / custom_404.html root /usr/share/nginx/html ;
internal;
>
. . .
>
>

Как правило, редактировать директиву root нет необходимости. Однако здесь она задана явно, чтобы страницы ошибок обслуживались даже в случае перемещения веб-контента и каталога document root в другую точку.

Настройка страницы ошибок 500

Затем можно добавить директивы для обслуживания пользовательской страницы ошибок 500. Это делается точно таким же образом; используйте следующий код:

/etc/nginx/nginx.conf
http . . .
server . . .
error_page 404 /custom_404.html;
location = /custom_404.html root /usr/share/nginx/html;
internal;
>
error_page 500 502 503 504 / custom_50x.html ;
location = / custom_50x.html root /usr/share/nginx/html;
internal;
>
location /testing fastcgi_pass unix:/does/not/exist;
>
>
>

В конце файла добавлен фиктивный путь к FastCGI, чтобы протестировать работу страницы 500. В данном случае возникнет ошибка, поскольку бэкэнда не существует. При запросе страницы на экране появится код ошибки 500 и соответствующая пользовательская страница.

Сохраните и закройте файл.

Перезапуск Nginx и тестирование настроек

Проверьте синтаксис файла на наличие ошибок при помощи команды:

Если команда обнаружила в файле ошибки, исправьте их, прежде чем продолжить. Если ошибок нет, перезапустите веб-сервер:

sudo systemctl restart nginx

Теперь попробуйте открыть домен или IP сервера в браузере и запросить несуществующий файл, чтобы проверить настройку страницы 404:

http:// server_domain_or_IP /thiswillerror

на экране появится страница со следующим сообщением:

Error 404: Not found 🙁
I have no idea where that file is, sorry. Are you sure you typed in the correct URL?

Если запросить местонахождение FastCGI, на экране появится страница ошибки 502 Bad Gateway:

http:// server_domain_or_IP /testing
Oops! Something went wrong.
We seem to be having some technical difficulties. Hang tight.

После тестирования удалите фиктивный путь к FastCGI из настроек Nginx.

Заключение

Теперь сервер Nginx обслуживает пользовательские страницы ошибок для сайта. В целом, пользовательские страницы ошибок – это отличный способ помочь посетителям сайта разобраться, в чём дело, предоставить им всю необходимую информацию об ошибке и полезные ссылки (не забудьте убедиться, что ссылки работают даже в случае возникновения ошибок).

Источник

Пользовательские страницы ошибок в Nginx

Nginx – это высокопроизводительный веб-сервер, способный гибко и качественно обслуживать контент. Оформляя страницы своего сайта, вы наверняка захотите создать пользовательский стиль для каждого его элемента, включая и страницы об ошибках, которые появляются, если контент недоступен. В этом руководстве мы покажем, как настроить такие страницы на Nginx.

Требования

  • Виртуальный сервер с пользователем sudo (мы используем сервер Ubuntu 22.04, настроенный по этому мануалу).
  • Предварительно установленный веб-сервер Nginx (инструкции по установке вы найдете здесь).

Создание пользовательской страницы об ошибке

Пользовательские страницы ошибок, которые мы используем здесь, предназначены для демонстрационных целей. Если у вас есть свои страницы, используйте их.

Поместите пользовательские страницы ошибок в каталог /usr/share/nginx/html, корневой каталог Nginx по умолчанию. Там мы создадим страницу для ошибки 404 под названием custom_404.html и для общих ошибок уровня 500 под названием custom_50x.html.

Примечание: Дальнейшие строки можно использовать, если вы тренируетесь на наших страницах. В противном случае не забудьте указать свои данные.

Сначала создайте HTML-файл для своей пользовательской страницы 404 с помощью nano или другого текстового редактора:

sudo nano /usr/share/nginx/html/custom_404.html

Вставьте туда код, который определяет пользовательскую страницу:

Error 404: Not found :-(

I have no idea where that file is, sorry. Are you sure you typed in the correct URL?

Сохраните и закройте файл.

Теперь создайте файл HTML для страницы 500:

sudo nano /usr/share/nginx/html/custom_50x.html

Вставьте в файл следующее:

Oops! Something went wrong.

We seem to be having some technical difficulties. Hang tight.

Сохраните и закройте файл.

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

Настройка Nginx для поддержки пользовательских страниц

Итак, пора сообщить Nginx, что он должен использовать эти страницы всякий раз, когда возникают соответствующие ошибки. Откройте тот файл server-блока в каталоге /etc/nginx/sites-enabled, который вы хотите настроить. Здесь мы используем стандартный файл по имени default. Если вы настраиваете свои собственные страницы, пожалуйста, убедитесь, что используете правильный файл:

sudo nano /etc/nginx/sites-enabled/default

Теперь нужно направить Nginx на соответствующие страницы.

Настройка пользовательской страницы 404

Используйте директиву error_page, чтобы при возникновении ошибки 404 (когда запрошенный файл не найден) обслуживалась созданная вами пользовательская страница. Создайте location-блок для вашего файла, где вы сможете установить его правильное расположение в файловой системе и указать, что файл доступен только через внутренние перенаправления Nginx (не запрашиваемые клиентами напрямую):

Обычно устанавливать root в новом блоке location не нужно, так как он совпадает с root в блоке server. Однако здесь мы явно указываем, что страницы ошибок нужно обслуживать, даже если вы перемещаете свой обычный веб-контент и связанный с ним root в другое место.

Настройка страницы ошибок 50х

Затем добавьте новые директивы, чтобы Nginx, столкнувшись с ошибками уровня 500 (это проблемы, связанные с сервером), мог обслуживать другую пользовательскую страницу, которую вы создали. Здесь мы будем следовать той же формуле, которую вы использовали в предыдущем разделе. На этот раз мы насторим несколько ошибок уровня 500, чтобы все они использовали страницу custom_50x.html.

Внизу мы также добавим фиктивный FastCGI, чтобы вы могли протестировать свою страницу с ошибкой уровня 500. Это выдаст ошибку, потому что бэкэнд на самом деле не существует. Так вы можете убедиться, что ошибки уровня 500 обслуживают вашу пользовательскую страницу.

Отредактируйте файл /etc/nginx/sites-enabled/default следующим образом:

server < listen 80 default_server; . . . error_page 404 /custom_404.html; location = /custom_404.html < root /usr/share/nginx/html; internal; >error_page 500 502 503 504 /custom_50x.html; location = /custom_50x.html < root /usr/share/nginx/html; internal; >location /testing < fastcgi_pass unix:/does/not/exist; >>

Сохраните и закройте файл, когда закончите.

Перезапуск Nginx и тестирование

Чтобы проверить синтаксис ваших файлов, введите:

Если команда обнаружила какие-либо ошибки, исправьте их, прежде чем продолжить. Перезапустите Nginx, если ошибок нет:

sudo systemctl restart nginx

Теперь, если вы перейдете на домен или IP-адрес вашего сервера и запросите несуществующий файл, вы должны увидеть настроенную вами страницу 404:

Перейдите в расположение вашего FastCGI и вы получите ошибку 502 Bad Gateway, что является ошибкой уровня 50х:

Вернитесь в конфигурационный файл и удалите фиктивный FastCGI.

Заключение

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

Источник

Оцените статью