У меня есть виртуальный частный сервер с Parallels Power Panel на CentOS 6. Виртуальный хост Apache по умолчанию (доступ через IP) работает без каких-либо проблем.
Теперь я создал новый домен с Plesk и скопировал файлы в каталог виртуального хоста. К сожалению, скрипты PHP не работают - вы можете получить к ним доступ, но они не предварительно обработаны. Модуль PHP работает, поскольку виртуальный хост по умолчанию все еще работает.
Я попытался изменить httpd.conf (вот полный файл) безуспешно добавляя директиву NameVirtualHost и раздел VirtualHost. Это раздел, который я добавил:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin admin@###.com
DocumentRoot /var/www/vhosts/###.com/httpdocs/
ServerName www.###.com
ServerAlias ###.com
ErrorLog /var/log/httpd/###.com/error.log
CustomLog /var/log/httpd/###.com/access.log common
<Directory "/var/www/vhosts/###.com/httpdocs/">
Options Indexes FollowSymLinks Includes MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
и это мой php.conf (в conf.d):
<IfModule prefork.c>
LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
LoadModule php5_module modules/libphp5-zts.so
</IfModule>
AddHandler php5-script .php
DirectoryIndex index.php
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php
Для протокола, проблема была в Plesk.
Вероятно, возникла проблема с ручной установкой PHP 5 из Webtatic. После этого любой новый субдомен, созданный с помощью Plesk, будет иметь в своей конфигурации Apache php_admin_flag engine off
.
Было сложно найти, где они находятся, потому что Plesk создает один файл конфигурации для каждого [под] домена в conf
subdir каталога домена и включите их в httpd.conf
. Это хорошая практика, но ее трудно найти, и вы не можете легко ее персонализировать, если хотите сделать что-то отличное от параметров графического интерфейса (если вы измените что-то через графический интерфейс, старый файл conf не будет изменен, но будет создан новый. создан, и вам нужно повторно применить все свои модификации).
Если это установка по умолчанию (пакеты httpd, php), ничего не изменилось, тогда это должна быть проблема php.ini с short_open_tag - php будет анализировать файлы с расширением .php, но игнорировать контент, если он не начинается с <?php
.
Похоже, вы не настроили Apache для правильного анализа файлов .php. Он не знает, что с ними делать, поэтому выплевывает их как загрузку.
http://dan.drydog.com/apache2php.html
Попробуйте шаг 11.