|
发表于 2025-8-25 09:43:26
|
显示全部楼层
你好!部署 Django 项目到公司局域网服务器其实并不复杂,下面我为你整理一个清晰的步骤指南。
核心思路:
将你的 Django 项目代码放到服务器上,安装好运行环境(Python、依赖库、数据库),然后启动一个能让局域网内其他电脑访问到的服务器。
详细步骤:
1. 准备服务器
* 确保服务器上已经安装了 Python(版本要符合你的项目要求)、MySQL 和 pip。
* 可以使用命令检查是否安装:
- python --version
- pip --version
- mysql --version
复制代码
2. 上传项目代码
* 将你的整个 Django 项目文件夹拷贝到服务器上你希望放置的目录,例如 /opt/myproject。
* 可以通过 U 盘、共享文件夹、或者使用 scp 命令(如果服务器是 Linux 且开启了 SSH)进行传输。
3. 创建虚拟环境并安装依赖(推荐)
* 进入你的项目目录。
* 创建虚拟环境(隔离项目依赖):
* 激活虚拟环境:
* Linux:
* Windows:
* 安装项目所需的依赖包(通常在项目根目录的 requirements.txt 文件中):
- pip install -r requirements.txt
复制代码
* 别忘了安装数据库驱动:
# 或者在Windows上可能用 `pip install mysqlclient`
4. 配置数据库
* 登录 MySQL,为你的项目创建一个新的数据库和用户,并授予权限。
* 修改 Django 项目的配置文件 settings.py,正确配置数据库连接信息(NAME, USER, PASSWORD, HOST)。
- DATABASES = {
- 'default': {
- 'ENGINE': 'django.db.backends.mysql',
- 'NAME': 'your_database_name',
- 'USER': 'your_mysql_username',
- 'PASSWORD': 'your_mysql_password',
- 'HOST': 'localhost', # 如果MySQL就在本服务器上
- 'PORT': '3306',
- }
- }
复制代码
5. 应用数据库迁移和收集静态文件
* 在项目目录下,执行以下命令:
- python manage.py migrate
- python manage.py collectstatic
复制代码
6. 修改Django设置以允许局域网访问
* 在 settings.py 中,找到 ALLOWED_HOSTS 配置。
* 添加你的服务器的局域网 IP 地址(例如 192.168.1.100),或者直接允许所有主机(仅建议在内网调试时这样设置):
- ALLOWED_HOSTS = ['192.168.1.100', 'localhost', '127.0.0.1'] # 替换为你的服务器IP
- # 或者(不安全,仅临时测试用)
- # ALLOWED_HOSTS = ['*']
复制代码
7. 启动开发服务器进行测试(最简单的方法)
* 运行以下命令,让 Django 开发服务器监听所有网络接口(0.0.0.0):
- python manage.py runserver 0.0.0.0:8000
复制代码
* 现在,局域网内的其他电脑就可以通过浏览器访问 [url=http://你的服务器IP:8000]http://你的服务器IP:8000[/url] 来看到你的网站了。
8. 使用生产级服务器(更稳定,推荐)
* Django 自带的开发服务器性能较弱且不安全,仅适合调试。
* 建议使用 Gunicorn 或 uWSGI 作为应用服务器,配合 Nginx 作为反向代理服务器。
* 一个简单的使用 Gunicorn 的方式:
* 安装 Gunicorn:
* 启动 Gunicorn:
- gunicorn --bind 0.0.0.0:8000 your_project_name.wsgi:application
复制代码 # 将 your_project_name 替换为你的项目名称
* 这样同样可以通过 [url=http://你的服务器IP:8000]http://你的服务器IP:8000[/url] 访问。
重要提醒:
* 上述步骤 7 和 8 中的方式是为了让你快速在内网跑起来。对于真正的生产环境,强烈建议使用步骤 8 的生产级服务器(Gunicorn/uWSGI + Nginx)并进行更详细的安全和性能配置。
* 如果公司服务器是 Windows,步骤可能略有不同,但整体流程一致。
* 确保服务器的防火墙开放了您使用的端口(例如 8000)。
希望这个指南能帮你成功部署!如果遇到具体问题,可以再随时提问。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|