ruby — повар Apache2 с модом php поваренная книга из супермаркета — не получает такой файл или каталог

ищу немного руководства

Я пытаюсь использовать поваренную книгу Apache2 из супермаркета Chef. Я создаю виртуальный хост со следующим кодом:

#Install shop
directory '/var/www/html/shop/' do
owner 'www-data'
group 'www-data'
mode '0755'
action :create
end

#Configures Apache Site for shop
web_app "shop" do
template 'web_app.conf.erb'
server_name "www.xyz.com.au"server_aliases ["www.xyz.com.au"]
docroot "/var/www/html/shop"options '-Indexes'
cookbook 'apache2'
allow_override
end

Это работает нормально, и я могу подключиться к серверу http хорошо. Но когда я вызываю mod_php:

apache_module "mod_php" do
enable true
end

Я получаю следующую ошибку. Я делаю что-то не так, включив PHP с этой кулинарной книгой?

apache2: Syntax error on line 121 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/mod_php.load: Cannot load /usr/lib/apache2/modules/mod_mod_php.so into server: /usr/lib/apache2/modules/mod_mod_php.so:
cannot open shared object file: No such file or directory

Так что я не уверен, что делать с этим, но я подумал, что спросить и посмотреть, есть ли у кого-нибудь опыт использования этой кулинарной книги?
https://supermarket.chef.io/cookbooks/apache2#readme

И мне было бы интересно, если кто-нибудь знает, как передать переменные конфигурации PHP в php.ini. Я не могу видеть это из этой кулинарной книги?

Спасибо,

-натуральный

0

Решение

Как указывают документы для этой кулинарной книги, рецепт будет пытаться вывести различную информацию на основе имени, которое вы передаете. В вашем случае это mod_php, По умолчанию это поиск имени файла mod_mod_php, Вы можете указать другое имя файла в зависимости от того, что вам нужно, что может выглядеть примерно так.

apache_module "php7" do
filename "libphp7.so"end

Я бы сначала проверил, какие модули установлены в /usr/lib/apache2/modules/, У вас может быть другая версия php или вам нужно сначала установить соответствующий модуль.

Редактировать:
Важно также изменить первую строку с apache_module "mod_php" do в apache_module "php7" do, Имя по умолчанию для модуля выводится следующим образом:

identifier — строка для идентификации модуля для директивы LoadModule. Обычно не требуется, по умолчанию используется # {name} _module

В качестве альтернативы, вы можете установить идентификатор на «php7» (или любое другое имя модуля).

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]