机器TestPC-A中的Django服务器,地址为192.25.56.120

我希望从同一网络192.25.56.xxx中的计算机访问它.

我已配置的内容

1. settings.py


ALLOWED_HOSTS = ["127.0.0.1", "localhost", "TestPC-A" , "0.0.0.0", "192.25.56.120"]

#and this which I am not sure if this is necessary:

CSRF_TRUSTED_ORIGINS = [
    "http://127.0.0.1",
    "https://127.0.0.1",
    "http://localhost",
    "https://localhost",
    "https://TestPC-A",
    "http://TestPC-A",
]

2. runserver.bat

@echo off
REM Activate virtual environment in the current terminal session and run server
cmd /k ".venv\Scripts\activate && python manage.py runserver_plus --cert-file cert.pem --key-file key.pem 0.0.0.0:8000"

我try 在Windows主机文件C:\WINDOWS\SYSTEM32\DRIVERS\ETC\HOSTS中添加以下内容

192.25.56.120    TestPC-A

我重新启动服务器,并且网页没有在另一台计算机的网络浏览器https://TestPC-A:8000/处加载

我还需要设置什么?

推荐答案

为了子孙后代.To make your development server viewable to other machines on the network.

假设你有两台机器machine Amachine B.将两台机器连接到一个公共网络(甚至可以是您手机的wifi).

如果machine A将是您的服务器,即machine A是您的源代码一直在的机器,machine A是您一直在运行命令的地方:

python manage.py runserver

Check the IP address machine A was assigned on this network. [stackoverflow]将该IP地址添加到Django设置ALLOWED_HOSTS [django-docs] list,以便Django将允许机器托管它.

例如,如果IP地址是172.200.42.1,则将其添加到ALLOWED_HOSTS,然后现在运行命令:

python manage.py runserver 0.0.0.0:7000 # <—- runserver on port 7000 on this host on this network

由于machine Bmachine A连接到相同的网络,请使用machine B上的任何http客户端(甚至您的互联网浏览器都可以使用)连接到machine A,即使用套接字地址172.200.42.1:7000[1]连接到您的服务器.


[1]我们将使用此套接字地址,因为应用程序在machine A上运行,该网络上的IP地址为172.200.42.1,并且应用程序在端口7000上运行.

Python相关问答推荐

更改matplotlib彩色条的字体并勾选标签?

根据不同列的值在收件箱中移动数据

连接两个具有不同标题的收件箱

Pandas - groupby字符串字段并按时间范围 Select

如何记录脚本输出

Python库:可选地支持numpy类型,而不依赖于numpy

如何列举Pandigital Prime Set

根据二元组列表在pandas中创建新列

从一个系列创建一个Dataframe,特别是如何重命名其中的列(例如:使用NAs/NaN)

如何使Matplotlib标题以图形为中心,而图例框则以图形为中心

Python Pandas获取层次路径直到顶层管理

如何从列表框中 Select 而不出错?

* 动态地 * 修饰Python中的递归函数

如何使用正则表达式修改toml文件中指定字段中的参数值

30个非DATETIME天内的累计金额

Tensorflow tokenizer问题.num_words到底做了什么?

计算机找不到已安装的库'

pytest、xdist和共享生成的文件依赖项

try 在单个WITH_COLUMNS_SEQ操作中链接表达式时,使用Polars数据帧时出现ComputeError

为什么这个正则表达式没有捕获最后一次输入?