Назад | Перейти на главную страницу

Несколько вопросов по работе с PHP 5.4

Я установил PHP 5.4 на Debian из исходного кода и запускаю сценарии php на встроенном веб-сервере PHP с новыми функциями php без каких-либо ошибок, но сценарии php не запускаются с apache2 с новыми функциями php.

Я не понял полностью взаимосвязь между php и apache2. Итак, у меня есть несколько вопросов:

  1. Я могу запускать сценарии php со встроенным сервером php, поэтому достаточно ли встроенного веб-сервера для обслуживания сценария php без какого-либо веб-сервера, такого как apache или nginx? (Если вы откажетесь, объясните, почему.)
  2. Как я могу использовать PHP 5.4 с apache2?
  3. Почему apache2 не интерпретирует новые функции PHP, даже если я установил PHP 5.4?
  4. Нужно ли мне снова компилировать apache2? Если да, то почему?
  5. Какая связь между apache2, модулем mod_php и php?

Я могу запускать php-скрипт со встроенным php-сервером, поэтому достаточно ли встроенного веб-сервера для обслуживания php-скрипта без какого-либо веб-сервера, такого как apache или nginx? (Если вы говорите нет, почему?)

  • Да, но ТОЛЬКО для разработки. Встроенный сервер очень примитивен и не предназначен для производства в любой форме и форме.

Как я могу использовать php 5.4 с apache2?

  • Установите через диспетчер пакетов вашего дистрибутива (если он доступен в репозитории) или скомпилируйте его; Я настоятельно рекомендую вам установить заголовки Apache devel для вашего mpm. Изучите параметр конфигурации --with-apxs2 в документации, который требует дополнительной настройки для apache.

Почему apache2 не интерпретирует новые функции PHP, хотя я установил PHP 5.4?

  • Если вы перезапустили Apache, а он все еще работает, скажем, 5.3, значит, вы неправильно установили или настроили его при компиляции.

Я должен снова компилировать apache2, почему?

  • Недостаточно информации, чтобы помочь вам в этом

Как связаны процессы между apache2, модулем mod_php и php?

  • Не слишком запутавшись: конфигурация Apache загружает модуль php (просто «ключ», сопоставленный с модулем), который является файлом .so. Затем он связывает файлы типа файла PHP для обработки с этим SAPI.