php7.0-fpm нет работа с apache2.4 в Ubuntu-16.04

Я использую Ubuntu-16.04 для установки сервера apache. Я использую php-fpm для обработки файлов php. Я подписался на этот пост . После настройки мои службы apache2 и php7.0-fpm перезапустились правильно. Но когда я просматриваю файл php, я получаю простой файл. Кажется, что нет php cgi для обработки файла php. Что со мной не так?

Я новичок в apache. Поэтому я не знаю, какие конфигурации вставлять. По вашим ответам выложу необходимые конфигурации. Thx!


Мои шаги по установке:

Установить PHP и PHP-fpm:

sudo apt-get install php libapache2-mod-php
sudo apt-get install libapache2-mod-fastcgi php7.0-fpm

Включить моды fastcgi

sudo a2dismod php mpm_prefork
sudo a2enmod actions fastcgi alias mpm_worker

Создать глобальную конфигурацию для php7.0-fpm

sudo vim /etc/apache2/conf-available/php7.0-fpm.conf

И записать в конфигурации:

<IfModule mod_fastcgi.c>
    AddHandler php7.0-fcgi .php
    Action php7.0.fcgi /php7.0.fcgi
    Alias /php7.0-fcgi /usr/lib/cgi-bin/php7.0.fcgi
    FastCgiExternalServer /usr/lib/cgi-bin/php7.0.fcgi -socket /var/run/php7.0.fpm.sock -pass-header Authorization
    <Directory /usr/lib/cgi-bin>
        Require all granted
    </Directory>
</IfModule>

Затем включите php7.0-fpm conf

sudo a2enconf php7.0-fpm

Перезапустите apache и fpm

sudo service apache2 restart && sudo service php7.0-fpm restart

Edit /var/www/html/index.php :

<?php
phpinfo();
?>

Затем просмотрите http: // localhost / index.php , но получил содержимое файла вместо распечатанной страницы.

1
задан 4 May 2017 в 11:46
2 ответа

Я столкнулся с подобными проблемами при установке php7.0 в Ubuntu 16.04. Не держите меня за это, но я думаю, что проблема связана с разрешениями. Я делаю www-data владельцем и группой всех файлов в папке / var / www, а права доступа chmod меняются на drwxrwxr-x. Это только на моем собственном сервере разработки, и у меня нет опыта в этом, поэтому используйте на свой страх и риск. Их можно отменить так же легко, как и изменить.

0
ответ дан 3 December 2019 в 20:24

Ваши конфигурации немного сбиты с толку. Попробуйте следующее:

    <Directory /usr/lib/cgi-bin>
        Require all granted
    </Directory>
    <IfModule mod_fastcgi.c>
        AddHandler php7-fcgi .php
        Action php7-fcgi /php7-fcgi
        Alias /php7-fcgi /usr/lib/cgi-bin/php7-fcgi
        FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi -socket /var/run/php/php7.0-fpm.sock -pass-header Authorization
    </IfModule>

Я добавляю это сюда, и работает хорошо: /etc/apache2/sites-available/000-default.conf

2
ответ дан 3 December 2019 в 20:24

Теги

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