Nginx配置

一、禁止目录访问

有些目录或文件不能由http进行访问(页面打不开),但是要求nginx本身是能够访问的(程序有读写权限),这个时候直接更改目录的权限或归属是没有用的,必须使用nginx来控制访问的权限1

假设你的现在根目录为/var/www,所要禁止的目录为/var/www/denydir,则修改nginx的配置文件:

$ sudo vim /etc/nginx/sites-available/default

server的花括号的尾部添加(包含在server中):

location /denydir{
    deny all;
    return 403;
}

二、添加目录列表

有此时候我们希望目录中的文件能够像ftp服务器一样直接列出来,能够直观的通过web列出来。nginx只需命令autoindex on即可。

autoindex可以放在location中,只对当前location的目录起作用。你也可以将它放在server指令块则对整个站点都起作用。或者放到http指令块,则对所有站点都生效。

假设你的现在根目录为/var/www,所要禁止的目录为/var/www/listdir,则修改nginx的配置文件:

$ sudo vim /etc/nginx/sites-available/default

server的花括号的尾部添加(包含在server中):

location /listdir{
    autoindex on;
}

三、sites-available与site-enable

nginx配置目录下有site-availablesite-enable两个目录,其中site-available中放置提实体文件,而site-enable则是指向site-available中文件的链接。而gninx的主配置文件nginx.conf则仅仅使用site-enable中的文件。

这样看来site-avilable中的文件只要不链接到site-enable中就不会生效?实际情况并不是这个样子。site-available中的配置实际上也会部分生效的(原因未明)。不管怎么样,只需要修改site-avilable中的文件即可,但是要确定site-enable中的文件确实是链接,而不是实体文件。

四、wordpress的固定链接设置

只需要在site-available/defult中添加下面的配置即可:

location /{
    tryfiles $uri $uri/ /index.php?$args;
}

Reference


  1. mood.nginx目录列表和目录访问权限设置.http://www.nginx.cn/692.html 
此条目发表在网络建站, 软件安装分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。