В чем разница между PHP и libapache2_mod_php

Я новичок в системном администрировании, и при запуске файлов oho с сервером Apache 2 мне пришлось установить php на моем Ubuntu 16.04.

Я попробовал базовую установку Sudo apt-get install php, которая загрузила только пустую страницу (файл php)

Но установка libapache2_mod_php решила мою проблему.

Я хочу понять различия.


person Deeraj Theepshi    schedule 08.06.2018    source источник
comment
php — это просто двоичный файл, который может выполнять php-код, как и java. libapache2_mod_php — это двоичный файл php, который разработан и скомпилирован для работы с веб-сервером Apache, чтобы Apache интерпретировал php и обрабатывал его. Apache не может знать, есть ли у вас двоичный файл php, если вы не дадите ему очень конкретные инструкции, которые у вас есть: вставьте libapache2_mod_php   -  person Loek    schedule 08.06.2018


Ответы (2)


Все довольно просто: Apache — это WWW-сервер, PHP — интерпретатор. С помощью библиотеки libapache2_mod_php Apache может отправить запрос PHP, который создает веб-сайт, отправляет визуализированный HTML (или что-то еще) в Apache, а затем отвечает пользователю.

Поток примерно такой: введите здесь описание изображения

без этой библиотеки Apache не знает, что такое файл .php, и распознает его как необработанный файл, который можно загрузить без интерпретации PHP (иногда это очень опасно, например, когда вы храните пароли в файле PHP).

person Siper    schedule 08.06.2018

libapache2_mod_php — это плагин в Apache веб-сервере, который интерпретирует .php файлы (и другие, зависит от того, как вы его настроите) вместо того, чтобы обслуживать файлы .php как есть (в противном случае вы получите код php на своей странице).

Модуль также немного быстрее, так как он запускается в процессе Apache, а не в отдельном исполняемом файле каждый раз, когда скрипт необходимо интерпретировать. Но они используют одни и те же базовые библиотеки.

person jbx    schedule 08.06.2018