неизвестная директива "content_by_lua_file" в Nginx, Linux - PullRequest
0 голосов
/ 24 июня 2019

После установки всего - nginx, Lua, LuaJit, openresty и т. Д. - и запуска nginx, я получаю следующее:

unknown directive "content_by_lua_file" in /etc/nginx/sites-enabled/my_site.com

Что я забыл?Должна ли была быть включена поддержка Lua, когда я устанавливал nginx?Как?

Мой скрипт будет работать на LuaJit, а ОС - Arch Linux

1 Ответ

0 голосов
/ 24 июня 2019

Вам не нужно устанавливать openresty и nginx отдельно.Openresty - это модифицированный nginx, а не библиотека, и его исполняемый файл также называется nginx.Попробуйте набрать whereis nginx в командной строке и посмотрите, есть ли у вас более одного исполняемого файла в вашем пути, и, скорее всего, вы обнаружите, что вы запускаете обычный nginx вместо openresty.

Если вы не хотитечтобы openresty и nginx работали параллельно (для этого действительно нет веской причины, если только он не соответствует каким-либо сторонним стандартам безопасности или что-то в этом роде), просто удалите nginx (и чтобы быть на 100%, удалите и переустановите openresty тоже),затем попробуйте снова.

Если это все еще не работает, попробуйте позвонить nginx -V и скажите нам, что он говорит.


РЕДАКТИРОВАТЬ:

Вы также можетевведите

which nginx

, чтобы точно определить, какой исполняемый файл используется, и

ls $(which openresty)

, чтобы увидеть, является ли это символической ссылкой куда-либо, или

file $(which openresty)

, чтобы увидеть, является ли этодвоичный или bash-скрипт, который запускает что-то еще.

Это должно охватывать наиболее распространенные косвенные указания и помочь точно определить, какой двоичный файл nginx на самом деле вызывается.

Также попробуйте, еслиестьn openresty двоичный файл, используя команды, упомянутые выше.

...