1. nginx如何设置允许直接通过IP访问网站
设置你监听的端口,设置server_name为ip+端口
server {
listen 9000;
charset utf-8;
server_name xx.xx.xx.xx:9000;
......
}
重启,然后就可以使用该IP访问了
2. nginx 怎么屏蔽通过ip访问
我的服务器也在阿里云 按照你的说 接入阿里云的waf对网站进行防护,但是如果直接通过IP地址访问网站即可绕过阿里云waf,于是希望禁止通过ip访问网站
打开Nginx的配置文件nginx.conf
在server段里插入如下内容即可
if ($host != 'chaodiquan.com' ) {
return 403;
}
解释一下,这段的意思是,如果访问请求不是上面指定的域名,就返回403错误。
3. nginx怎么配置IP和域名都能访问
一个nginx服务器只能有一个虚拟主机允许IP访问
只要在server_name最后面添加一个default,就可以在其他nginx没有定义的域名下,使用当前server解析(例如,其他server都没有定义ip地址作为server_name则用IP访问会被打到default主机上)
4. nginx 限制目录访问为403,允许其它访问ip访问怎么变成404
nginx中针对目录进行IP限制 ,这里以phpmyadmin目录只能让内网IP访问,而外网不能访问的配置方法。
nginx phpmyadmin 针对内网ip用户开放、外网ip用户关闭(在前面的配置中,location ~ ^/目录/使用正则, 优先级高于location /的配置,所以nginx无法对首页进行解析)
代码如下:
server {
listen 80;
server_name example.com;
access_log logs/access.log main;
location / {
root html;
index index.php index.html index.htm;
}
location ~ ^/phpmyadmin/ {
allow 192.168.1.0/24;
deny all;
location ~ .*.(php|php5)?$ {
root /var/mailapp/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
}
location ~ .*.(php|php5)?$ {
root /opt/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
}
5. nginx 无法通过ip访问网站怎么解决
分析:拒绝用户通过ip地址访问网站。
方法:修改nginx.conf文件,添加如下内容
###################################################
upstream 访问的ip
地址 {
server
分发的ip地址:80
max_fails=3 fail_timeout=30s;
server
分发的ip地址:80
max_fails=3 fail_timeout=30s;
}
server
{
listen 80;
#自定义错误文件
error_page 403 http://www.xxxx.com/error/403.html;
server_name
访问的ip地址;
location
= / {
deny
all;
}
}
###################################################
结果:用户使用以上定义的“访问的ip地址”进行访问时,将提示403.html中的内容。
同时error日志中将记录--2010/09/11
05:33:28 [error] 25107#0: *33370 access forbidden by rule, client:
124.115.0.106, server: 访问的ip地址 request: "GET / HTTP/1.0",
hos
t: "访问的ip地址"
6. nginx配置通过IP访问返回静态页面
如果你以虚拟主机的方式在nginx上跑网站,就把默认的虚拟主机的主机名写成ip地址 ,它的网站目录下放错误信息提示页面的html文件 。默认虚拟主机配置类似:
server {
listen 80;
server_name 192.168.1.12 default;
root D:\ServCode\www;
index index.html;
}
7. nginx 禁止ip访问
因为这里面只有一个server域,并且又设置了default标识,因此,此处可能是可以用ip进行访问的。
如果想屏蔽掉ip访问,只允许域名访问的话,可以增加如下配置。
server {
#....
if ( $host ~* "d+.d+.d+.d+" ) {
return 400;
}
location / {
#....
}
}
这样,当用ip访问时,$host的值就为ip地址,如果$host否和ip的正则,就直接返回400给客户端。
你不防线这样试试。
8. 如何设置nginx可以让ip可以直接访问网站
设置你监听的端口,设置server_name为ip+端口
server {
listen 9000;
charset utf-8;
server_name xx.xx.xx.xx:9000;
......
}
重启,然后就可以使用该IP访问了
9. nginx怎么设置指定目录ip访问限制
nginx中针对目录进行IP限制 ,这里以phpmyadmin目录只能让内网IP访问,而外网不能访问的配置方法。
nginxphpmyadmin针对内网ip用户开放、外网ip用户关闭(在前面的配置中,location ~ ^/目录/使用正则, 优先级高于location /的配置,所以nginx无法对首页进行解析)
代码如下:
server{
listen80;
server_nameexample.com;
access_loglogs/access.logmain;
location/{
roothtml;
indexindex.phpindex.htmlindex.htm;
}
location~^/phpmyadmin/{
allow192.168.1.0/24;
denyall;
location~.*.(php|php5)?${
root/var/mailapp/nginx/html;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefastcgi_params;
}
}
location~.*.(php|php5)?${
root/opt/nginx/html;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefastcgi_params;
}
}
10. 别人怎么通过我的ip访问我的nginx
直接在浏览器输入你的IP就可以了
如果无法访问先用内网IP测试看看,如果内网可以访问,可能是路由器设定问题,
通讯端口转发记得要开80端口给你的nginx的内网IP
如果内网就无法访问,查看一下nginx的服务有没有启动,如果服务正常启动,查看防火墻是否有开80端口访问或者是防火墻是否有吧nginx服务阻挡掉