почему мои php-файлы отображаются как обычный текст?

Я пишу php-приложения, используя php некоторое время в wamp. Теперь я устанавливаю PHP и apache отдельно на своем рабочем компьютере. Я установил PHP 5 и последний apache. Я иду на localhost и вижу, как это работает! теперь я добавляю файл с именем test.php, который отображает:

<?php phpinfo(); ?> 

но в браузере он просто отображает простой текст. Есть ли где-то я прямо говорю, что он использует PHP5?

большое спасибо

Вам нужно добавить это в конфигурацию вашего сервера:

 AddType application/x-httpd-php .php 

что предполагается, что вы правильно установили php, что может быть не так, поскольку он не работает там, где он обычно будет сразу после установки.

Вполне возможно, что вам также придется добавить php so / dll в конфигурацию apache с LoadModule директивы LoadModule (обычно в httpd.conf )

Вы должны установить php5 lib для apache

для debian и ubuntu: apt-get install libapache2-mod-php5

и перезапустите service apache2 restart apache service apache2 restart

Еще одна причина (не для этого случая, но, может быть, это сэкономит некоторые нервы для кого-то), заключается в том, что в php 5.5 короткие открытые теги <? phpinfo(); ?> <? phpinfo(); ?> <? phpinfo(); ?> по умолчанию отключены. Таким образом, php-интерпретатор обрабатывал код в коротких тегах как обычный текст. В предыдущих версиях php эта функция была включена по умолчанию. Поэтому новое поведение может быть немного загадочным.

Вам необходимо настроить Apache (веб-сервер) для обработки PHP-скриптов как PHP. Проверьте конфигурацию Apache, вам нужно загрузить модуль (путь может отличаться в вашей системе):

 LoadModule php5_module "c:/php/php5apache.dll" 

и вам также нужно сообщить Apache, что обрабатывать с PHP:

 AddType application/x-httpd-php .php 

Дополнительную информацию см. В документации.

Возможно, вы также, как и я, установили php-cgi перед установкой Apache, и при этом он неправильно настроил Apache для запуска PHP, полностью удалив PHP и переустановив, по-видимому, исправил мою проблему.

Вам нужно будет добавить обработчики в Apache для обработки PHP-кода.

Редактировать командой sudo vi /etc/httpd/conf/httpd.conf

Добавьте эти два обработчика

  AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 

в положении, указанном ниже

 <IfModule mime_module> AddType application/x-compress .Z AddType application/x-gzip .gz .tgz --Add Here-- </IfModule> 

для получения дополнительной информации об обработчиках AddType

http://httpd.apache.org/docs/2.2/mod/mod_mime.html

Вы используете мода userdir?

В этом случае дело в том, что PHP5, по-видимому, отключает запуск сценариев из этого места по умолчанию, и вам нужно прокомментировать следующие строки:

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

в /etc/apache2/mods-enabled/php5.conf (в системе ubuntu)