当前位置:蚂蚁分类目录 » 站长资讯 » 站长运营 » 技术教程 » 文章详细 订阅RssFeed

如何添加Nginx多个网站禁止通过ip访问,禁止访问某一目录?

来源:互联网 浏览:487次 时间:2021-05-08 13:53:36

我们在网站建设过程中,可能会遇到一些比较特殊的需求,比如禁止通过服务器IP来访问网站,禁止访客访问网站的某些不想被公开的网站目录,今天我们就来说说Nginx添加多个网站,禁止通过ip访问,禁止访问某些目录的方法。

一、同一个nginx上安装多个网站的方法

在nginx.conf的http{}中按照说明修改server{}字段

server {

        listen       80;

        server_name  antdir.cn;  #所绑定的域名


        location / {

            root   example;  #该域名对应的网站根目录

            index  index.html index.htm index.php;

        }

        location ~ \.php$ {  #支持php

            root           C:/nginx/html;  #php访问目录

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            include        fastcgi_params;

        }

    }

如果想添加多个网站,添加多个server{}并绑定不同的域名,设置不同的根目录即可。

二、以下是禁止通过ip访问的代码

server {

        listen 80 default_server;

        server_name _;

        return 444;  #当有用户通过ip访问时返回的HTTP状态码

}

三、禁止访问某些目录

location ^~ /admin/test/ {

deny all;

}

这样就可以禁止访问/admin/test目录下的任何文件。