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

本文涉及的产品
.cn 域名,1个 12个月
简介: 为了我们的服务器安全,我们需要禁止直接使用 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 的访问,只允许特定域名访问了


目录
相关文章
|
2天前
|
Web App开发 算法 应用服务中间件
nginx开启局域网https访问
【10月更文挑战第22天】为了调试WebRTC功能,需要在局域网内搭建HTTPS协议。具体步骤包括:在已部署Nginx和安装OpenSSL的环境中生成私钥、证书签名请求和自签名证书;将生成的文件放置到Nginx的证书目录并修改Nginx配置文件,最后重启Nginx服务。注意,自签名证书不受第三方机构认可,如需正式使用,需向CA申请签名。
|
1月前
|
应用服务中间件 Shell PHP
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
2月前
|
网络协议 安全
网络中IP地址与域名系统
网络中IP地址与域名系统
47 3
|
2月前
|
Ubuntu 应用服务中间件 数据库
Nginx配置:阻止非国内IP地址访问的设置方法
此外,出于用户隐私和法律合规性的考虑,应慎重考虑阻止特定国家或地区IP地址的决策。在某些情况下,这可能被视为歧视性或违反当地法律。
128 2
|
3月前
|
JavaScript 应用服务中间件 PHP
nginx server 禁止特定目录下的某类文件访问
【8月更文挑战第26天】这段Nginx配置代码旨在保护`/uploads/`目录下的文件,禁止执行任何`.php`, `.html`, `.htm`, 或 `.js`等潜在有害文件,即便被访问也无法运行。取而代之的是重定向到首页。为了实现这一设置,用户需要定位到对应子域名的`.conf`配置文件中进行相应修改。若网站支持多个访问域名,则需确保在正确的`.conf`文件中实施此配置。
76 1
|
3月前
|
应用服务中间件 Linux nginx
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
|
3月前
|
域名解析 缓存 负载均衡
在Linux中,自定义解析域名的时候,可以编辑哪个⽂件?是否可以⼀个ip对应多个域名?是否⼀个域名对应多个ip?
在Linux中,自定义解析域名的时候,可以编辑哪个⽂件?是否可以⼀个ip对应多个域名?是否⼀个域名对应多个ip?
|
应用服务中间件 nginx 网络协议
|
应用服务中间件 nginx 网络协议