2013-11-11 2 views
2

У меня уже есть сайт, который уже работает над nginx.
nginx conf файл находится в /etc/nginx.conf папке.
Теперь я хочу интегрировать lua в этот проект, поэтому я установил Openresty. Я создал папку с названием «работа» согласно инструкции в документе. И веб-сайт отлично работает на порту 8080 согласно инструкциям.
Теперь я хочу использовать тот же код в файле /etc/nginx/nginx.conf. как я могу использовать утверждения типа 'content_by_lua'. Я не могу настроить это. Я получаю ниже ошибки.OpenResty: настроить lua с уже предоставленным файлом /etc/nginx/nginx.conf

 
Starting nginx: nginx: [emerg] unknown directive "content_by_lua" in /etc/nginx/nginx.conf:25 
nginx: configuration file /etc/nginx/nginx.conf test failed 

Позвольте мне знать, что я делаю неправильно

ответ

1

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

попробовать тип nginx -V, чтобы увидеть, если ваш Nginx настроен nginx_lua_module

Может быть, вы должны выяснить, где openresty Nginx является и использовать этот Nginx вместо используемого по умолчанию.

2

Я начал с того же пункта. Если бы nginx, имел lua, установил openresty и пошел оттуда. Я получал ту же ошибку. Проведя значительное время, пытаясь сделать пакеты openresty хорошими с моей установкой nginx, мне было проще удалить nginx и двигаться вперед только с nginx от openresty. Просто создайте резервные копии ваших текущих nginx.conf и любых файлов-vhost.

При установке openresty я обязательно включил опцию --with-luajit. Настройте тест «привет, мир», и все сработало чудесно. Моя самая большая жалоба не была в состоянии начать и остановить nginx как услугу. Проблема заключается в отсутствии файла init.d в открытой установке. К счастью, я наткнулся на это:

https://groups.google.com/forum/#!topic/openresty-en/7UOz-y77CY4

просто изменить имя openresty (вместо openresty.init.d) и место в /etc/init.d/ (предполагается для Ubuntu). и пуск/останов/перезагрузка, как sudo service openresty start

Смежные вопросы