我想在一个多余的config.ini中指定manage.py runserver侦听的默认端口。有没有比解析sys. exe更简单的解决方案?在manage.py和插入配置端口Argv ?
目标是运行./manage.py runserver,而不必每次都指定地址和端口,而是让它从config.ini中获取参数。
我想在一个多余的config.ini中指定manage.py runserver侦听的默认端口。有没有比解析sys. exe更简单的解决方案?在manage.py和插入配置端口Argv ?
目标是运行./manage.py runserver,而不必每次都指定地址和端口,而是让它从config.ini中获取参数。
当前回答
实际上,在Django服务器开发中修改(唯一)端口的最简单方法是:
python manage.py runserver 7000
它应该在http://127.0.0.1:7000/上运行开发服务器
其他回答
这是一个旧的帖子,但是对于那些感兴趣的人:
如果你想改变默认端口号,那么当你运行"runserver"命令时,你可以这样做:
Find your python installation. (you can have multiple pythons installed and you can have your virtual environment version as well so make sure you find the right one) Inside the python folder locate the site-packages folder. Inside that you will find your django installation Open the django folder-> core -> management -> commands Inside the commands folder open up the runserver.py script with a text editor Find the DEFAULT_PORT field. it is equal to 8000 by default. Change it to whatever you like DEFAULT_PORT = "8080" Restart your server: python manage.py runserver and see that it uses your set port number
它适用于python 2.7,但也适用于较新版本的python。祝你好运
我在这里很晚了,但如果你使用像PyCharm这样的IDE,在“运行”菜单下的“编辑配置”中有一个选项(运行>编辑配置),在那里你可以指定一个默认端口。当然,这只适用于通过PyCharm进行调试/测试。
I was struggling with the same problem and found one solution. I guess it can help you. when you run python manage.py runserver, it will take 127.0.0.1 as default ip address and 8000 as default port number which can be configured in your python environment. In your python setting, go to <your python env>\Lib\site-packages\django\core\management\commands\runserver.py and set 1. default_port = '<your_port>' 2. find this under def handle and set if not options.get('addrport'): self.addr = '0.0.0.0' self.port = self.default_port
现在如果你运行"python manage.py runserver",它将默认运行在"0.0.0.0 "上:
享受编码.....
我们创建了一个新的“runserver”管理命令,它是标准命令的精简包装,但改变了默认端口。粗略地说,你创建management/commands/runserver.py并放入如下内容:
# Override the value of the constant coded into django...
import django.core.management.commands.runserver as runserver
runserver.DEFAULT_PORT="8001"
# ...print out a warning...
# (This gets output twice because runserver fires up two threads (one for autoreload).
# We're living with it for now :-)
import os
dir_path = os.path.splitext(os.path.relpath(__file__))[0]
python_path = dir_path.replace(os.sep, ".")
print "Using %s with default port %s" % (python_path, runserver.DEFAULT_PORT)
# ...and then just import its standard Command class.
# Then manage.py runserver behaves normally in all other regards.
from django.core.management.commands.runserver import Command
您可以尝试像这样在manage.py中添加一个参数
python manage.py runserver 0.0.0.0:5000
python manage.py runserver <您的IP>:<端口>
或者像这样通过港口
python manage.py runserver 5000
Python manage.py runserver <您的端口>