方法一
1.购买阿里云服务器
此处用的是Ubunto版linux系统
2.设置阿里云密码
3.XShell连接阿里云
连接时需要输入用户名和密码进行验证,用户名:root,密码:阿里云服务器密码
4.安装包
a)更新源
sudo apt update
b)安装mysql
apt install mysql-server mysql-client
4.设置远程访问mysql
a)查找mysql.conf
find / -name mysql.sql
b)注释mysqld.cnf文件的bind_address
路径:/etc/mysql/mysql.conf.d
文件:mysqld.cnf
c)连接数据库
mysql -u root -p
d)进入mysql数据库
show databases >> use mysql
e)在数据库中输入下面的内容, 第一个引号内的内容不修改,第二个引号中输入数据库的密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root@123' WITH GRANT OPTION;
flush privileges;
exit;
f)重启mysql服务
service mysql restart
5.在阿里云的安全组件中添加3306端口
6.将本地数据库同步到服务器
a)新建连接,连接服务器
主机名或ip地址为服务器外网地址
b)数据库同步到服务器
7.项目上传到服务器 Xftp
通常在/home/目录下新建一个名为app的文件夹,在app下新建src conf log目录;src存放项目文件,conf存放配置文件,log存放日志文件。
8.配置项目文件
a)配置settings.py
>>>当 DEBUG = True 时,浏览器会自动渲染静态页面,改为False之后,浏览器不会自动渲染,需要配置statis路径。
>>>要允许所有用户都可以访问服务器,需要设置ALLOWED_HOST。
>>>配置DATABASES
DEBUG = False
ALLOWED_HOST=['*']
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '服务器公网地址',
'USER': 'root',
'PASSWORD': '服务器中数据库密码',
'PORT': '3306',
'NAME': '服务器中数据库名称',
}
}
b)配置主目录urls.py
from axf_app import views
url(r'^$', views.home),
url(r'^static/(?P.*)$', serve, {"document_root": settings.STATIC_ROOT}),
url(r'^media/(?P.*)$', serve, {"document_root": settings.MEDIA_ROOT}),
8.安装pip3
apt install python3-pip
9.安装项目所需要的包
pip3 install django==1.11
pip install mysql
10.查看进程
netstat -lntp
11.启动项目
默认是80端口
python3 manage.py runserver 0.0.0.0:80
方法二:使用 nginx+uwsgi 配置django 项目
1.更新源
sudo apt update
2.安装nginx
sudo apt-get install nginx
3.启动nginx
a)查看状态
systemctl status nginx
b)启动nginx
systemctl start nginx
4.安装uwsgi
pip install uwsgi
5.创建存放配置文件、日志、django项目的文件夹
通常创建文件夹目录如下:/home/app/ log conf log
mkdir app
cd app
mkdir log conf src
6.配置自定义的nginx配置文件
此文件在conf包内创建,命名为 nginx.conf 。
server {
listen 80; # 监听端口
server_name 47.92.164.198 localhost; # 公网地址 域名
access_log /home/app/log/access.log;
error_log /home/app/log/error.log;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8890;
}
location /static/ {
#设置static的路径
alias /home/app/src/day11axf0/static/;
expires 30d;
}
}
7.nginx的配置文件中加载自定义的nginx配置文件
a)查找nginx配置文件路径
find / -name nginx.conf
>>> /etc/nginx/nginx.conf
b)修改nginx.cnf内容
进入nginc.cnf所在路径,打开此文件,在server中加入以下配置:路径是自定义的nginx配置文件的路径。*.conf表示所有conf文件。
include /home/app/conf/*.conf;
8.配置uwsgi文件
在conf包内创建,命名为:uwsgi.ini
[uwsgi]
# 作为主进程
master = true
# 开启4个子进程
processes = 4
# 项目路径
pythonpath = 项目路径
# newprojectname 自己的项目名称
module = newprojectname.wsgi
socket = 127.0.0.1:8890
# uwsgi.log的路径
logto = /home/app/log/uwsgi.log
9.重启nginx
server nginx restart
10.查看nginx是否启动成功
server nginx status
11.启动uwsgi
在自己写的uwsgi.ini文件所在路径启动
uwsgi --ini uwsgi.ini