Как настроить nginx для включения режима просмотра "файлового браузера"?
Как только я это видел раньше, когда я набираю URL http://test.com/test/
, вместо того, чтобы давать мне html-страницу, он дает мне "браузер файлов", такой как интерфейс, для просмотра всех файлов в данном месте.
Я думаю, что это может быть модуль nginx, который можно включить в контексте местоположения.
Файл nginx.conf
:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name 122.97.248.252;
location /test {
root /home/yozloy/html/;
autoindex on;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
обновите error.log
2012/05/19 20:48:33 [error] 20357 # 0: * 72 open() "/home/yozloy/html/test" failed (2: Нет такого файла или каталога), клиент: 125.43. 236.33, сервер: 122.97.248.252, запрос: "GET/test HTTP/1.1", хост: "unicom2.markson.hk
Я должен неправильно понять местоположение /test
, я думал, что это означало, когда я набираю http://example.com/test, тогда он будет обращаться к корневому словарю которая /home/yozloy/html/
Ответы
Ответ 1
Вы должны попробовать HttpAutoindexModule.
Установите для параметра autoindex значение on
. По умолчанию он отключен.
Ваша примерная конфигурация должна быть в порядке
location /{
root /home/yozloy/html/;
index index.html;
autoindex on;
}
Без параметра autoindex вы должны получать Error 403 для запросов, заканчивающихся /
в каталогах, у которых нет файла index.html
. С помощью этой опции вы должны получить простой список:
<html>
<head><title>Index of /</title></head>
<body bgcolor="white">
<h1>Index of /test/</h1><hr><pre><a href="../">../</a>
<a href="test.txt">test.txt</a> 19-May-2012 10:43 0
</pre><hr></body>
</html>
Изменить: Обновлен список для удаления любых ссылок на тестер
Ответ 2
1. Список содержимого всех каталогов
Установите для параметра autoindex значение on
. По умолчанию он отключен.
Ваш конфигурационный файл (vi /etc/nginx/sites-available/default
) должен выглядеть следующим образом:
location /{
... ( some other lines )
autoindex on;
... ( some other lines )
}
2. Список содержимого только определенного каталога
Установите для параметра autoindex значение on
. По умолчанию он отключен.
Ваш файл конфигурации (vi /etc/nginx/sites-available/default
)
должно быть так.
измените path_of_your_directory
на путь к каталогу
location /path_of_your_directory{
... ( some other lines )
autoindex on;
... ( some other lines )
}
Надеюсь, что это поможет.
Ответ 3
Вам нужно создать папку /home/yozloy/html/test
. Или вы можете использовать alias
, как показано ниже:
location /test {
alias /home/yozloy/html/;
autoindex on;
}
Ответ 4
Просто добавьте этот раздел на сервер, перед location / {
location /your/folder/to/browse/ {
autoindex on;
}
Ответ 5
Я пробовал много раз.
И, наконец, я просто положил autoindex on;
в http
, но вне server
, и это ОК.