Nginx показывает пустые страницы PHP с FastCGI или PHP-FPM

Thank you for reading this post, don't forget to subscribe!

Вы долж­ны про­ве­рить свой доступ и жур­на­лы оши­бок Nginx. Если вы не полу­чи­ли ника­кой ошиб­ки в жур­на­ле оши­бок и полу­чи­те ста­тус HTTP 200/OK в жур­на­ле досту­па. Но, тем не менее, вы полу­чи­те пустые стра­ни­цы на всех стра­ни­цах PHP, тогда это исправ­ле­ние решит вашу проблему.

Как все­гда, мы сде­ла­ем это за несколь­ко про­стых шагов. На самом пер­вом шаге давай­те посмот­рим кон­фи­гу­ра­цию наше­го сай­та для бло­гов WordPress.

Шаг 1: Конфигурация блока местоположения для всех файлов PHP

Ниже при­ве­ден блок место­по­ло­же­ния, кото­рый мы исполь­зо­ва­ли для бло­гов WordPress.

Здесь мы вклю­ча­ем fastcgi_params из ngx_http_fastcgi_module из Nginx. Но забы­ли доба­вить сле­ду­ю­щую стро­ку в нуж­ный файл.

 

Шаг 2: Добавьте fastcgi_param в файл конфигурации

Нам про­сто нуж­но открыть файл /etc/nginx/fastcgi_params и доба­вить стро­ку ниже в кон­це файла.

 

ИЛИ вы може­те напря­мую про­пу­стить эту стро­ку с помо­щью при­ве­ден­ной ниже команды.

 

Теперь пере­за­пу­сти­те служ­бу PHP-FPM и служ­бу Nginx, исполь­зуя при­ве­ден­ные ниже команды.

 

При­ме­ча­ние
Если у вас дру­гая вер­сия PHP-FPM, вы долж­ны исполь­зо­вать ее вме­сто 7.3

Как ука­за­но в Nginx Docs, пара­метр дол­жен быть пере­дан на сер­вер FastCGI. После при­ме­не­ния это­го исправ­ле­ния ваши PHP-стра­ни­цы долж­ны рабо­тать. Если нет, то у вас, веро­ят­но, была дру­гая про­бле­ма. Вы може­те напи­сать в ком­мен­та­рии, как вы реши­ли эту проблему.