Php не работает в виртуальных хостах

У меня есть CentOS 6 VPS, я установил VirtualMin и Webmin на новую установку. Я следовал за проходом здесь http://76design.com/provision-webmin-centos/

У меня есть 5 доменов, которые мне нужно обслуживать с этого сервера. Я создал /home/domain.com/www для каждого, а затем зашел в webmin и настроил виртуальные серверы на веб-сервере Apache. Я настроил три домена и могу перейти к ним и доказать, что он работает, имея различную информацию в index.html в каталоге www. HTML работает, как и JavaScript, но PHP нет, что означает, что у меня нет доступа к MySQL.

Пожалуйста, дайте мне знать, что мне нужно сделать, чтобы php работал на всех виртуальных серверах. У меня WordPress на одном домене и доморощенный сайт на 2 других, и я хочу использовать Laravel на двух других, поэтому мне нужно, чтобы это работало. Я действительно не хочу возвращаться к ISPConfig 3.

Заранее спасибо.

Результат php -v

PHP 5.4.25 (cli) (built: Feb 18 2014 14:19:15)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

1 ответ

Решение

Вам необходимо включить userdir в конфигурации PHP.

Найдите строку в вашем конфиге PHP, которая говорит

<IfModule mod_userdir.c>
  <Directory /home/*/public_html>
    php_admin_value engine Off
  </Directory>
</IfModule>

и измените его, чтобы добавить еще Directory чтобы это выглядело так:

<IfModule mod_userdir.c>
  <Directory /home/*/public_html>
    php_admin_value engine Off
  </Directory>
  <Directory /home/*/www>
    php_admin_value engine On
  </Directory>
</IfModule>

Это должно включить PHP-скриптинг в этих каталогах.

Вам также необходимо установить разрешение /home/*/www каталоги к 755,

Также добавьте PHP в обработчик Apache в httpd.conf, например:

<FilesMatch "\.(htm|html|php)$">
   SetHandler application/x-httpd-php
</FilesMatch>

или же

AddHandler application/x-httpd-php5 .html .htm
Другие вопросы по тегам