@Pista

После обновления с PHP 5.6 -> 7.2 при обращении к index.php на экран выводится содержимое файла, как исправить?

Установил на сервер php 7.2, в конфиге Nginx указал
upstream php
{
server unix:/var/run/php/php7.2-fpm.sock;
}

Перезагрузил Nginx и при переходе на сайт на экран выводится содержимое файла index.php, в чем дело? Если прописать
server unix:/var/run/php/php5.6-fpm.sock; то проблема уходит, и подгружается шаблон Html из директории на сервере, куда копать? Неужели какие-то правила Nginx перенастраивать нужно для Php 7.2 или может ошибка кроется в том что скрипт писался для PHP 5.6 и никогда не тестировался на 7.2 но и ошибок никаких не воводит.
  • Вопрос задан
  • 425 просмотров
Решения вопроса 1
@green_goo
Возможно используются короткие теги <? ?>, которые в конфиге для 7.2 отключены
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@tvoyadres
у меня тоже выводило сперва если у вас centos 6 или 7

то в папке /etc/httpd/php-available.d

есть php.conf, а также вероятно есть файл php.conf.new, переменуйте его в php.conf, сохранив старую версию

у вас должно быть примерно как тут

#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#

# Cannot load both php5 and php7 modules
<IfModule !mod_php5.c>
  <IfModule prefork.c>
    LoadModule php7_module modules/libphp7.so
  </IfModule>
</IfModule>


<IfModule !mod_php5.c>
  <IfModule !prefork.c>
    LoadModule php7_module modules/libphp7-zts.so
  </IfModule>
</IfModule>
#
# The following lines prevent .user.ini files from being viewed by Web clients.
#
<Files ".user.ini">
    <IfModule mod_authz_core.c>
        Require all denied
    </IfModule>
    <IfModule !mod_authz_core.c>
        Order allow,deny
        Deny from all
        Satisfy All
    </IfModule>
</Files>

#
# Allow php to handle Multiviews
#
AddType text/html .php

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php

# mod_php options
<IfModule  mod_php7.c>
    #
    # Cause the PHP interpreter to handle files with a .php extension.
    #
    <FilesMatch \.php$>
        SetHandler application/x-httpd-php
    </FilesMatch>

    #
    # Uncomment the following lines to allow PHP to pretty-print .phps
    # files as PHP source code:
    #
    #<FilesMatch \.phps$>
    #    SetHandler application/x-httpd-php-source
    #</FilesMatch>

    #
    # Apache specific PHP configuration options
    # those can be override in each configured vhost
    #
    php_value session.save_handler "files"
    php_value session.save_path    "/var/lib/php/session"
    php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"

    #php_value opcache.file_cache   "/var/lib/php/opcache"
</IfModule>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы