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