У меня macbook pro i5.
я понимаю, что по умолчанию он должен иметь возможность обслуживать php5.
я раскомментировал соответствующую строку в /etc/apache2/httpd.conf
LoadModule php5_module libexec/apache2/libphp5.so
Я перезапустил apache с помощью
sudo apachectl -k restart
и когда я пытаюсь получить доступ к файлу с расширением php, Apache предлагает мне загрузить файл. т.е. вместо того, чтобы обрабатывать php и отправлять мне html, он думает, что я хочу загрузить файл ....
когда я смотрю в журнал ошибок apache, я вижу это
[Пт, 12 ноября, 10:16:14 2010] [уведомление] Apache / 2.2.14 (Unix) PHP / 5.3.2 mod_ssl / 2.2.14 OpenSSL / 0.9.8l DAV / 2 mod_wsgi / 3.2 Python / 2.6.1 настроен - - возобновление нормальной работы
так что похоже, что php5 загружается правильно.
Я бы тоже хотел знать:
Как это исправить?
или
Как переустановить apache2 так, как будто я только что установил ос?
заранее спасибо
Обновить @Zayne - в конце моего httpd.conf
Include /private/etc/apache2/other/*.conf
и у меня есть файл /etc/apache2/other/php.conf с содержимым
<IfModule php5_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
@Zayne Я уже скопировал php.ini.default в php.ini в той же папке. когда я бегу
sudo apachectl configtest
я получил
/usr/sbin/apachectl: line 82: ulimit: open files: cannot modify limit: Invalid argument
httpd: Could not reliably determine the server's fully qualified domain name, using ::1 for ServerName
Syntax OK
Кроме того, я решил попробовать
apachectl -M
который показывает все загруженные модули. Самое главное в списке загруженных модулей, которые я получил
Loaded Modules:
php5_module (shared)
Поскольку модуль загружается, похоже, что проблема больше связана с тем, чтобы apache использовал движок php для обработки файлов php .... так что-то не так с директивой ifmodule?
Совершенно новый Macbook, чистая установка, я сделал:
sudo cp /etc/php.ini.default /etc/php.ini
и раскомментировал строку в /etc/apache2/httpd.conf:
LoadModule php5_module libexec/apache2/libphp5.so
затем побежал:
sudo apachectl restart
и это сработало.
Я знаю, что прошло немного времени после того, как об этом спросили, но я просто macported мой стек AMP и отключил apache по умолчанию таким образом, я не связываюсь с версией системы по умолчанию
Вам нужно сообщить apache, что делать с файлами расширения .php. Итак, конфиги должны где-то включать строки, похожие на:
<IfModule mod_php5.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
</IfModule>
При необходимости раскомментируйте / добавьте и сообщите нам, если это не поможет.
ОБНОВИТЬ
У вас больше нет Mac для тестирования, поэтому я немного почитал, и кажется, что следующие действия - это все, что необходимо для включения PHP и apache2 в Snow Leopard:
apachectl configtest
Не уверен, пробовали ли вы последние два - не могли бы вы попробовать и сообщить нам, поможет ли это?