Nginx限制IP访问只允许特定域名访问

简介: 为了我们的服务器安全,我们需要禁止直接使用 IP 访问我们的服务器,我们可以借助 Nginx 完成

为了我们的服务器安全,我们需要禁止直接使用 IP 访问我们的服务器,我们可以借助 Nginx 完成

  • 1、找到 nginx 的配置文件
cd /usr/local/nginx/conf/

找到 nginx.conf 文件

编辑它

  • 2、添加新的 server
# 禁止ip访问
server {
    listen 80 default_server;
    listen 443 ssl default_server;
    server_name _;
    return 403;
}

注意是在所有的 server 前面添加一个新的 server,如图所示

这里我们开启了 http 和 https 的监听,如果是直接使用 ip 访问的,我们将会返回 403 状态码给客户端

  • 3、修改 server

nginx.conf 文件中默认配置信息为

server {
    listen       80;
    server_name  localhost;
    location / {
        root   html;
        index  index.html index.htm;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

server_name 对应的是 localhost,这里我们需要更改成我们指定的域名,如:

server {
    listen       80;
    server_name  xxx.com;
    location / {
        root   html;
        index  index.html index.htm;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}
  • 4、访问测试

重启 nginx

./nginx -s reload

浏览器输入 IP 地址,出现如下

说明我们的配置已经成功了

我们输入域名试试

输入域名能够正常访问,说明我们的配置生效,此时就限制了 IP 的访问,只允许特定域名访问了


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
1月前
|
应用服务中间件 nginx
Nginx中如何配置中文域名?
Nginx中如何配置中文域名?
45 0
|
7天前
|
域名解析 缓存 负载均衡
Nginx正向代理域名的配置
Nginx正向代理域名的配置
|
10天前
|
网络协议 Ubuntu Linux
|
19天前
|
应用服务中间件 网络安全 nginx
nginx配置https访问
nginx配置https访问
33 0
|
21天前
|
关系型数据库 MySQL 数据安全/隐私保护
使用docker快速搭建wordpress服务,并指定域名访问
通过以上步骤,你可以使用Docker快速搭建WordPress服务,并通过指定的域名进行访问。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
22 1
|
28天前
|
应用服务中间件 nginx
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
9 0
|
29天前
|
应用服务中间件 nginx
nginx配置https和直接访问静态文件的方式
nginx配置https和直接访问静态文件的方式
28 3
|
1月前
|
JavaScript 前端开发 应用服务中间件
通过域名的方式访问服务器里的资源
通过域名的方式访问服务器里的资源
25 0
|
1月前
|
前端开发 应用服务中间件 nginx
nginx中配置不输入端口(指定地址)访问项目的方法
nginx中配置不输入端口(指定地址)访问项目的方法
27 0
|
2天前
|
网络协议 对象存储
阿里云oss配置自有域名
阿里云oss配置自有域名
11 1