如何配置nginx以启用kinda';文件浏览器';模式
我以前在键入URL如何配置nginx以启用kinda';文件浏览器';模式,nginx,Nginx,我以前在键入URLhttp://test.com/test/,它没有给我一个html页面,而是给我一个类似“文件浏览器”的界面来浏览给定位置的所有文件 我认为它可能是一个nginx模块,可以在位置上下文中启用 nginx.conf文件: worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/oc
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;
}
}
}
更新错误日志
2012/05/19 20:48:33[错误]20357#0:*72 open()“/home/yozloy/html/test”失败(2:没有这样的文件或目录),客户端:125.43.236.33,服务器:122.97.248.252,请求:“获取/测试HTTP/1.1”,主机:unicm2.markson.hk
我一定是误解了位置/test
的意思,我以为这意味着当我键入时,它将访问根词典,即/home/yozloy/html/
,您应该试试
将autoindex
选项设置为on
。默认设置为off
您的示例配置应该是正确的
location /{
root /home/yozloy/html/;
index index.html;
autoindex on;
}
如果没有自动索引
选项,则在没有index.html
文件的目录上,对于以/
结尾的请求,您应该会得到错误403。使用此选项,您应该会得到一个简单的列表:
<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>
索引/
索引/测试/
2012年5月19日10:43 0
编辑:更新列表以删除任何要测试的引用。1.列出所有目录的内容
将自动索引选项设置为启用。默认情况下,该选项处于禁用状态
您的配置文件(vi/etc/nginx/sites available/default
)应该如下所示
location /path_of_your_directory{
... ( some other lines )
autoindex on;
... ( some other lines )
}
2.仅列出某些特定目录的内容
将自动索引选项设置为启用。默认情况下,该选项处于禁用状态
您的配置文件(vi/etc/nginx/sites available/default
)应该是这样的。
将目录的路径更改为目录路径
location /your/folder/to/browse/ {
autoindex on;
}
希望对您有所帮助。只需将此部分添加到服务器,就在
位置/{
location /test {
alias /home/yozloy/html/;
autoindex on;
}
您需要创建
/home/yozloy/html/test
文件夹。或者您可以使用别名
,如下所示:
sudo vim /etc/nginx/sites-available/default
我试过很多次了
最后我把
自动索引打开;
放在http
中,但在服务器之外,这样就可以了。所有答案都包含部分答案。让我试着将所有答案合为一
在新安装的nginx服务器上快速设置“文件浏览器”模式:
编辑nginx的默认配置:
location /myfolder { # new url path
alias /home/username/myfolder/; # directory to list
autoindex on;
}
将以下内容添加到配置部分:
mkdir -p /home/username/myfolder/
ls -la >/home/username/myfolder/mytestfile.txt
在此处创建文件夹和示例文件:
sudo systemctl restart nginx
重新启动nginx
检查结果:http:///myfolder
例如
这似乎很有希望。但我无法让它工作,我将相关指令放在这里location/{root/home/yozloy/html/;index index.html;autoindex on;}
请检查您是否重新启动了nginx,并且nginx没有使用--without-http\u autoindex\u模块进行编译我记得我给出的唯一标志是--with-mp4\u模块,这是否意味着默认情况下安装了http\u autoindex\u模块?或者我是否有一些命令来检查我是否安装了它,而不是nginx-V
应该为您提供配置列表红色选项。请注意,自动索引在默认情况下处于启用状态。因此,如果没有--without autoindex,那么它就可以了。请检查错误日志,然后更新问题。讨论时间太长了。我会将其移至聊天室。测试目录是否存在?@DmitriChubarov test directory不存在,我认为/test仅表示url中的内容,因此我可以直接到根目录,我不想做一个测试字典,我一定是误解了,但是我怎么才能把它做对呢?你能创建/home/yozloy/html/test目录并填充它看看自动索引是否有效吗?@DmitriChubarov感谢它在我创建测试文件夹时起作用。location/
是访问e您想要共享的文件(例如/data
),而不是您希望通过nginx共享的目录(例如~/videos/fully cats/
)。
sudo systemctl restart nginx