搭建 Django 服务器

搭建 Django 服务器

购买服务器

设置用户和组

  1. win10 打开控制命令面板首页,找到应用–可选功能—找添加功能 — 找openssh,安装
  2. 找powershell
  3. 远程登录命令: ssh root@公网ip
  4. 退出exit
  5. 规避风险,创建一个普通用户
  6. 创建用户组
groupadd admin
  1. 创建用户
useradd thinklis -g admin
  1. 给thinklis用户设置密码
passwd thinklis
  1. exit
  2. 使用新创建的用户登陆服务器
ssh thinklis@公网ip
  1. 接着exit退出,继续换回root用户登陆
ssh root@公网ip
  1. 修改新用户的权限
cd /etc
vim sudoers
  1. 插入一条命令
thinklis	ALL=(ALL)	ALL

  1. 保存退出:wq!
  2. 禁止root用户远程登陆
cd /etc/ssh
vi sshd_config
  1. 设置PermitRootLogin no

  1. 保存退出:wq!
  2. 重启sshd服务,使之生效
systemctl restart sshd.service
  1. exit退出,再使用root用户远程登陆服务器测试

设置登陆证书(略)

设置防火墙和端口

  1. ssh登陆
  2. 设置服务器自动更新,更新yum源
sudo yum -y update
  1. 设置yum自动更新
sudo yum install -y cronie yum-cron
  1. 设置配置文件
sudo vi /etc/yum/yum-cron.conf
  1. 做出修改no 改为yes

  1. 保存退出
  2. 启动服务
sudo systemctl start crond
sudo systemctl start yum-cron
  1. 安装防火墙
sudo yum install -y firewalld
sudo systemctl start firewalld.service
  1. 测试,列出当前防火墙所有的服务
sudo firewall-cmd --list-all
  1. 修改ssh的端口(默认22)去掉注释,修改为12345或其他,保存退出
sudo vi /etc/ssh/sshd_config


11. 修改防火墙中ssh的配置,先拷贝出来

sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
sudo vi /etc/firewalld/services/ssh.xml

  1. 打开阿里云安全组(添加12345端口)
  2. 通过阿里云web网站进行连接服务器(重启防火墙和ssh服务)
sudo systemctl restart sshd.service
sudo systemctl restart firewalld.service
  1. 修改本地ssh.conf(notepad ssh.conf) win上的修改方法

安装数据库

  1. 登陆服务器
  2. 安装
sudo yum -y install mariadb mariadb-server
  1. 启动数据库
sudo systemctl start mariadb
sudo systemctl enable mariadb.service

建立root账户初始化

mysql_secure_installation   

第一个回车跳过

按y

其他一律跳过

  1. root账号登陆数据库(数据库密码123456)
mysql -uroot -p
create database mysite;
  1. 远程连接Mariadb数据库 使用navicat
  2. 在阿里云控制台增加3306端口,下载tcping.exe,
  3. tcping 公网IP 3306,查看是否畅通
  4. 启动数据库
mysql -uroot -p
use mysql;
  1. 查看user,password,host这三个字段的权限分配情况:
select user,password,host from user; 

通过以上输出可以看出数据库默认只允许用户root在本地服务器(localhost)上登录,不允许其他主机远程连接。

  1. 允许用户root使用密码(123456)在任何主机上连接该数据库,并赋予该用户所有权限。(小写也可以)
grant all privileges on . to root@"%" identified by “123456” with grant option;
flush privileges; 
  1. 再次执行
select user,password,host from user;

新加入的行中的“%”就意味着任何主机都被允许连接数据库,这样数据库的访问权限就设置好了。

重启数据库,再点击测试连接,这回就连接成功了。

  1. 添加3306端口
  • 开启防火墙
systemctl status firewalld  //查看防火墙状态

systemctl start firewalld  //打开防火墙
  • 输入开放3306端口命令
firewall-cmd --zone=public --add-port=3306/tcp --permanent;

firewall-cmd --reload  //重启防火墙

重启防火墙后需要执行

iptables -F //清除预设表 (filter) 中的所有规则链中的规则

安装python3

  1. 登陆 查看版本 python --version
cd ~
mkdir py3
cd py3
  1. 安装以来环境
sudo yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel zlib-devel libffi-devel MySQL-python mysql-devel	
  1. 在本地找到www.python.org/ftp/python,找到Python.—.tgz,右键复制下载链接
wget https:-----------
tar -zxvf Python-3.7.2.tgz
ls
cd Python-3.7.3
  1. 指定python安装路径
cd /usr/local/
sudo mkdir python3
cd ~
ls
cd py3
ls
cd Python3.7.3
ls
./configure --prefix=/usr/local/python3/
ls
make
sudo make install
cd /usr/local/python3/
ls
sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3
python3 --version
sudo ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
cd ~
ls
sudo rm -rf py3
sudo pip3 install mysqlclient

安装测试django

sudo pip3 install django
sudo ln -s /usr/local/python3/bin/django-admin /usr/bin
django-admin
cd /home/
sudo mkdir www
ls
cd www
sudo django-admin startproject mysite
sudo -y install tree
tree
sudo mv mysite root
cd root
ls
cd /mysite
# 写hello world (略)
sudo python3 manage.py migrate
sudo python3 manage.py runserver 0.0.0.0:80
此处django启动成功后,公网ip无法访问解决
iptables -F //清除预设表 (filter) 中的所有规则链中的规则

配置django项目

  1. 打开vs code
  2. 左侧最下面图标,扩展, 安装插件 搜索 sftp 下载安装,重启vs code
  3. ctrl+shift+p输入sftp.config
  4. 在sftp.json中进行配置
  5. 右键 同步服务器到本地

设置Nginx和uWSGI

ls
sudo pip3 install uwsgi
sudo ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3
sudo yum -y install nginx
exit
iptables -F //清除预设表 (filter) 中的所有规则链中的规则

配置django项目

  1. 打开vs code
  2. 左侧最下面图标,扩展, 安装插件 搜索 sftp 下载安装,重启vs code
  3. ctrl+shift+p输入sftp.config
  4. 在sftp.json中进行配置
  5. 右键 同步服务器到本地

设置Nginx和uWSGI

ls
sudo pip3 install uwsgi
sudo ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3
sudo yum -y install nginx
exit
  1. 本地vscode中配置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值