本地主机:8000工作,但是修改了etc / hosts的mywebsite:8000无法工作

时间:2020-01-03 19:50:33

标签: django

一切都在标题中:我正在8000端口上启动我的Web服务器(Django / Python)。

/home/olivier/my_venv3.8/bin/python3 /home/olivier/pycharm-2018.1.3/plugins/python/helpers/pydev/pydevd.py --multiproc --qt-support=auto --client 127.0.0.1 --port 40761 --file /home/olivier/projects/evalr/manage.py runserver 8000
pydev debugger: process 5923 is connecting

Connected to pydev debugger (build 193.5662.61)
http://evalr.hqf.fr:8000/fr/assistant/
http://evalr.hqf.fr:8000/fr/sessions/
pydev debugger: process 5935 is connecting

http://evalr.hqf.fr:8000/fr/assistant/
http://evalr.hqf.fr:8000/fr/sessions/
Watching for file changes with StatReloader
Performing system checks...

我在/etc/hosts行中添加了以下行:127.0.1.1 evalr.hqf.fr,当我ping它时,它正确显示了“ 127.0.0.1

当我尝试继续进行http://evalr.hqf.fr:8000时,我会拒绝连接,而当我尝试继续进行http:/localhost:8000时,它会起作用。

问题是,当我尝试继续进行http://evalr.hqf.fr:8000时,我在服务器端没有任何跟踪,即它停留在这里:

System check identified no issues (0 silenced).
January 03, 2020 - 20:41:31
Django version 3.0.2, using settings 'evalr.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

当我继续进行http://127.0.0.1:8000/时,我会得到每次访问的日志,例如:

[03/Jan/2020 20:47:42] "GET /fr/sessions/ HTTP/1.1" 302 0
[03/Jan/2020 20:47:42] "GET /fr/login/?next=/fr/sessions/ HTTP/1.1" 200 7031
[03/Jan/2020 20:47:43] "GET /static/vendors/css/all.min.css HTTP/1.1" 200 54456
 ................ blabla............;
[03/Jan/2020 20:47:43] "GET /favicon.ico HTTP/1.1" 301 0

我什至尝试过重新启动(即使我使用的是Linux,它本身也会说话-无需重新启动),所以我被卡住了,因为一切都可以正常进行。我想念什么?

2 个答案:

答案 0 :(得分:0)

那是因为在/ etc / hosts中应该改为127.0.0.1

还要检查ALLOWED_HOSTS,您可以尝试使用以下命令运行它:python manage.py runserver 0.0.0.0:8000

答案 1 :(得分:0)

使用主机名时连接被拒绝,并且看不到应用程序的任何日志记录,这使我认为您正在处理DNS缓存。我最喜欢的测试方法是使用curl,因为它可以显示IP地址和HTTP请求的响应。尝试以下命令:

curl -Iv -X GET http://evalr.hqf.fr:8000

它解析为127.0.0.1吗?如果是这样,您得到回应了吗?如果是这样,您是否在应用程序中看到日志?

如果这些问题的答案是肯定的,请尝试清除DNS和浏览器缓存。

相关问题