云服务器安装nginx为啥通过公有ip不能访问文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了云服务器安装nginx为啥通过公有ip不能访问文件相关的知识,希望对你有一定的参考价值。

以下是小鸟云官网整理的:
If you do not want to process requests with undefined "Host" header lines, you may define a default server that just drops the requests:

复制代码 代码如下:

server
listen 80 default_server;
server_name _;
return 444;


说白了就是只要是访客用ip访问就直接重置444错误。但是这样好像又不太友好,如果能直接给跳转到该web server的网址就好了。配置如下:

复制代码 代码如下:

server
listen 80 default_server;
server_name _;
rewrite ^ http://www.domain.com$request_uri?;


这样还是有一点问题,某些特别的地址,我需要用ip访问,其他的都禁止,如何配置呢?比如说我想让监控宝直接用ip访问我的机器的nginx状态信息,其他的用ip访问的所有请求都跳转到域名上。

复制代码 代码如下:

server
listen 80 default_server;
server_name _;
location /xxxxx
stub_status on;
access_log off;

location /
rewrite ^ http://www.domain.com$request_uri?;



这样就实现了我们想要的功能了。
参考技术A 有..

腾讯云主机安装centos,搭建apache,开启httpd服务,域名解析到公网,访问公网ip却不能访问到apache首页!

我在腾讯云上租了一台服务器安装centos系统,搭建apache web服务器,域名成功解析到了这台服务器的公网ip上,能ping通域名和公网ip,开启httpd服务,在互联网上,访问服务器公网ip,不能访问到apache的首页!!!why?????域名解析成功,80端口也是打开的,用云服务器,访问本机127.0.0.1或者内网ip,就能正常的访问web服务器首页。公网IP却不行,也没提示,一直链接状态。如果公网IP也能访问apache首页是不是还需要什么?

公网的 80端口要去电信备案的 不备案默认是访问不了的 你吧公网端口映射改成别的端口试试
不过腾讯云好像可以在网页上备案 你找找看
如果确认80端口正常 吧你的apache 虚拟主机那段 配置发出来看看追问

确实是公网80端口没开,我没备案,麻烦

参考技术A 看你的情况。

以上是关于云服务器安装nginx为啥通过公有ip不能访问文件的主要内容,如果未能解决你的问题,请参考以下文章

阿里云ECS服务器配置好环境了为啥公网IP不能访问

nginx 怎么屏蔽通过ip访问

一个网站用域名可以访问,用ip不能访问,是为啥?

阿里云服务器是如何实现每台服务器都是公网IP的呢?

求教我的tomcat配置了域名之后,为啥域名访问正常,而ip反而不能访问呢

使用Nginx搭建静态网站