python - 域名不适用于 Nginx(Python:Flask+Gunicorn+Nginx)
问题描述
我有一个从 Gandi 购买的域名,相关 DNS 也已设置。域名可以访问我的网站(使用XAMPP)。这说明当前域名是有效的。
~ 关于我的 API 项目 ~
项目路径为“/home/API_AIcustomerservice”
API 网址为“XXX.XXX.XXX.XXX:5062”
API的python文件名为“start_test.py”
我很确定 Gunicorn 和 Flask 是有效的。(我可以通过IP地址成功访问API url)
我使用 gconfig.py 通过命令“ gunicorn -c /home/API_AIcustomerservice/gconfig.py start_test:app
”运行 Gunicorn
[gconfig.py]
from gevent import monkey
monkey.patch_all()
import multiprocessing
debug = True
loglevel = 'debug'
bind = 'XXX.XXX.XXX.XXX:5062'
pidfile = 'log/gunicorn.pid'
logfile = 'log/debug.log'
workers = multiprocessing.cpu_count() * 2 + 1
worker_class = 'gevent'
关于 Nginx 我编辑了文件:vim /etc/nginx/sites-available/default
server {
listen 81;
root /home/API_AIcustomerservice;
server_name domainName www.domainName;
location / {
proxy_set_header x-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://XXX.XXX.XXX.XXX:5062/;
}
location ~ ^\/static\/.*$ {
root /home/API_AIcustomerservice;
}
}
编辑后,我运行sudo service nginx restart
~ 结论 ~
XXX.XXX.XXX.XXX:5062
可以访问(当然)
XXX.XXX.XXX.XXX:81
可以像上面一样访问(似乎 Nginx 工作)
但是DomainName:81
还是www.DomainName:81
无法访问
我错过了另一个设置吗?感谢您抽出宝贵时间。我从心底感谢你。
解决方案
检查您的域 DNS 服务器并解析 ip
nginx 配置为真
您可以测试本地解析域并再次测试它在 os 主机文件中定义 dns,例如:
xxx.xxx.xxx.xxx 域名
在窗口中:
c:\Windows\System32\Drivers\etc\hosts
在 Linux 中:
/etc/hosts
推荐阅读
- mysql - 从仅包含 sequelize 关系的表中正确获取数据
- c# - 在没有客户端密码的情况下以编程方式读取 Azure App Insights 日志?
- python - 突出显示某些条形图标签
- python - PermissionError pip install
- html - 当图像不在居中容器中时,如何将元素从其容器中拉出到浏览器的左侧或右侧边缘
- html - 具有超过 1 个表单的母版页?
- xaml - How use the styles merged?
- c - 我想给交流信号一个 270 度的相移
- metadata - Azure ADF - 获取元数据活动中的 ContentMD5 字段始终为空
- r - 将降雨量计算为雨天