环境搭建过程
nginx 版本1.18.0
系统ubuntu
python 版本3.8.10
django
uwsgi
安装好以上环境之后
1、创建django项目
在工作目录下django-admin startproject workOrderSystem
2、配置uwsgi
在生成的workOrderSystem下创建uwsgi.ini初始化文件
socket = :9999 #
chdir = /home/web/workOrderSystem
module = workOrderSystem.wsgi
master = true
processes = 4
vacuum = true
daemonize =/var/log/uwsgi/workOrderSystem.log
注:socket 为uwsgi的通讯端口号。chdir为页面根目录。vacuum当服务器退出的时候自动清理环境,删除 unix socket 文件和 pid 文件。processes 进程数
需要先在/var/log/下创建uwsgi文件夹
3、配置nginx
在/etc/nginx/sites-available/目录下,先备份default文件,以防修改后无法找到原始文件
vim default
server {
listen 9696;
listen [::]:9696;
server_name workOrderSystem.com;
charset UTF-8;
access_log /var/log/nginx/workOrderSystem.log;
error_log /var/log/nginx/workOrderSystem.log;
root /home/web/workOrderSystem;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 405.
include uwsgi_params;
uwsgi_pass 127.0.0.1:9999;
uwsgi_read_timeout 3;
}
location /static {
expires 30d;
autoindex on;
add_header Cache-Control private;
alias /home/web/workOrderSystem/static;
}
}
注: include uwsgi_params;
uwsgi_pass 127.0.0.1:9999;这两步是核心
4、启动时加载uwsgi配置
在vim /etc/rc1.d/K01nginx
加入
uwsgi --ini /home/web/workOrderSystem/uwsgi.ini &
注意要添加到 exit 0
之前,&
表示该服务是在后台执行
rc0.d: eeprom OpenBoot状态,可以进入硬件维护模式,或关闭机器。
rc1.d: 单用户模式,可以对系统进行软件维护。
S01MOUNTFSYS +加载文件系统。
rc2.d: 多用户模式,启动网络工作站服务。 (最后会启动dtlogin允许图形界面工作站)
rc3.d: 多用户模式,启动网络服务器模式
S15nfs.server - 启动nfs服务器
NFS网络文件服务器
5、修改settiings.py(调整admin页面样式表失效问题)
添加:
STATIC_URL = '/static/' --nginx 会通过static为开头访问指定静态资源文件
STATIC_ROOT = '/home/web/workOrderSystem/static/'
在项目目录下运行:
python3 manage.py collectstatic
6、访问项目
sudo /etc/init.d/nginx restart 重启服务
地址:9696
7、配置settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'workOrder',
'HOST': '127.0.0.1',
'PORT': '3306',
'USER': 'root',
'PASSWORD': '*******'
}
}
8、安装apt-get install libmysqlclient-dev、安装pip3 install mysqlclient,python3 manage.py migrate