服务器环境配置
1.更新ubuntu的源
sudo apt-get update
2.安装mysql
sudo apt-get install mysql-server mysql-client
说明:安装完成后窗口中会提示输入密码,可以直接回车表示不输入密码,但强烈建议输入密码,并且在项目中配置数据库时,密码要和此处一致,才能够访问到服务器中数据库。
3.配置mysql远程访问
- 切换到目录:/etc/mysql/mysql.conf.d/
- 打开文件mysqld.conf
- 注释bind_address
cd /etc/mysql/mysql.conf.d/
vim mysqld.conf
- 连接数据库
mysql -u root -p
- 进入mysql
use mysql
- 配置外部访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '数据库密码' WITH GRANT OPTION;
flush privileges;
flush privileges
命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。
MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令
- 重启mysql
有时flush privileges
并不一定能生效,所以手动重启一次mysql
service mysql restart
4.创建项目数据库,从本地迁移数据
(1)使用navicat创建服务器数据库连接
如果安装mysql时没有设置密码,此时则不填写密码
(2)创建一个新的数据库
(3)将本地数据库的数据迁移到服务器新建数据库里
5. 服务器安装nginx和uwsgi
sudo apt-get install nginx
sudo apt-get install uwsgi
检查nginx是否安装完成:用浏览器打开服务器地址看是否有页面
nginx默认页面所在路径: /var/www/html/
6.安装pip3&安装python的uwsgi模块
apt install python3-pip
pip3 install uwsgi
7.配置nginx文件
vim /etc/nginx/nginx.conf
(1)创建目录
通常会创建一个目录存放需要配置的文件和上传的工程等内容。/home/app/conf src logs。
mkdir home
cd home
mkdir app
cd app
mkdir conf src logs
- conf 存放配置文件
- src 存放工程文件
- logs 存放日志
(2)创建nginx.conf配置文件mynginx.conf
mynginx.conf是需要自己创建的一个nginx配置文件,此文件放在conf包中,配置内容如下:
server {
listen 80;
server_name 47.92.73.20 localhost;
access_log /home/app/logs/access.log;
error_log /home/app/logs/error.log;
location / {
include uwsgi_params;
# 端口号自行设定
uwsgi_pass 127.0.0.1:8890;
uwsgi_param UWSGI_CHDIR /home/app/src/s_aj;
uwsgi_param UWSGI_SCRIPT manage:app;
}
}
-
access_log
后面的参数是access.log的路径 -
error_log
后面的参数是error.log的路径 -
app
是manage中的Flask对象
(3)配置nginx.conf
http{
...
##
# Virtual Host Configs
include /etc……/conf.d/*.conf;
include /etc……/sites-enabled/*;
# 在此处添加自己的conf文件路径
include /home/app/conf/*.conf;
}
8.将项目上传服务器
1.可以用ftp软件(xshell/fileZilla)从本地上传到服务器
2.也可以通过上传git再从git clone到服务器
9.配置uwsgi.ini
uwsgi.ini是需要自己创建的一个配置文件,此文件存放于conf包中,配置内容如下:
[uwsgi]
# 端口号要和自己配置的nginx.conf中的端口一致
socket=127.0.0.1:8888
pythonpath=/home/app/iHome/src/ihome_like;
callable=app;
logto=/home/app/ihome/logs/uwsgi.log;
10.启动uwsgi.ini
启动后即可在网页上访问flask项目
uwsgi --ini uwsgi.ini