Невозможно прочитать файл и возвращает его результат nginx

Использование lua-nginx-модуля. И я не могу выполнить вещь, в которой я хочу изменить mtime файла (touch.txt).

Я пытался с помощью..

os.execute ("touch /app/directory/touch.txt")

и это

io.open ('/ приложение / каталог / touch.txt', 'ж'). закрыть ()

Но ничего из вышеперечисленного не работает..

Вот как выглядит мой nginx.conf

location / {
               auth_basic "Prohibited area";
               auth_basic_user_file /etc/apache2/.htpasswd;
               default_type 'text/plain';
               content_by_lua_block {
                  os.execute('/usr/bin/touch /app/directory/touch.txt')
                  local time = os.date("%m/%d/%Y %I:%M:%S %p")
                  ngx.say('Hello,world! '.. time)
               }
                proxy_redirect  off;
}

Я вижу время вернулось т.е.Hello,world! '.. time) в браузере правильно, но mtime touch.txt остаются прежними.

Любые вещи здесь.. о которых я должен позаботиться.

1 ответ

Решение
    location /lua {
      content_by_lua_block {
        local res = os.execute('/usr/bin/touch /tmp/touch.txt')
        local time = os.date("%m/%d/%Y %I:%M:%S %p")
        if res == 0 then
          ngx.header["Content-type"] = "text/plain"
          ngx.say('Hello,world! '.. time)
        else
          ngx.status = ngx.HTTP_NOT_FOUND
          ngx.header["Content-type"] = "text/plain"
          ngx.say('The world is doomed '.. time)
          ngx.say('because of  ' .. res)
        end
    }
Другие вопросы по тегам