Heim > Fragen und Antworten > Hauptteil
server {
listen 80;
server_name foo.bar.com;
access_log /www/logs/access.log;
error_log /www/logs/error.log;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8077;
}
error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location /static/ {
alias /www/app/my_site/static/;
index index.html index.htm;
}
location /media/ {
alias /www/app/media/;
}
}
Das Obige ist die Konfigurationsdatei. Wenn Sie 80 in 8001 ändern, können Sie darauf zugreifen. Oder Sie können direkt über IP darauf zugreifen, ohne 80 zu ändern.
Auf die Kombination Domainname: 80 allein kann nicht zugegriffen werden. Es gibt keine Fehlermeldung.
Was könnte der Grund sein?
PHP中文网2017-05-16 17:28:10
UNIX系统中1024以下端口需要root权限才可以监听,是否在启动的时候没有加sudo
?
另外,是否已经把 127.0.0.1 foo.bar.com
加入hosts?
大家讲道理2017-05-16 17:28:10
你在访问 域名:80
的时候,难道浏览器不会自动把 :80
帮你去掉吗?按理说,80
是常见的 HTTP 服务的默认商品,浏览器会自动处理啊。
你这个配置,直接访问 foo.bar.com
就可以了,不需要再加 :80
。你通过 IP 直接访问时,访问的是 Nginx 的默认监听 80 端口的那一个配置。
PHP中文网2017-05-16 17:28:10
nginx.conf或者其他的vhost的conf文件中做了限制ip访问的
例如:
server {
listen 80 default;
server_name _;
server_name www.example.com example.com
return 500;
}
習慣沉默2017-05-16 17:28:10
nmap foo.bar.com 看看你的foo.bar.com是否是你VPS的IP,顺便看看80端口是否已经被监听了。哦,还有可能涉及备案之类的问题。。。
大家讲道理2017-05-16 17:28:10
可以查下是否是备案的问题。同意RobinTang。(还不能赞同。。)
121.222.208.43 - - [time] "-" 400 0 "-" "-"
400 Bad request.
访问到达Nginx前就已经被破坏了。结合其他端口可用,很有可能是备案的问题了。(也许只有80,443不好用?)
自己都是买的国外的VPS和域名,没遇到过这个问题。