文章目录
撒币就行了
ssh登录进去,发现很多东西都没配置。
换yum源
可以跳过, 腾讯云自带腾讯源
#换yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
cd /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
yum -y update
安装各种基础软件
#安装各种基础软件
yum install -y gcc
yum install -y gcc-c++
yum install -y epel-release
yum install -y python36
yum install openssl-devel -y
yum install zlib-devel -y
yum -y install automake autoconflibtool make
cd /usr/bin/
ln -s python3.6 python3
安装setuptools
# setuptools
cd ~
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
tar zxvf setuptools-19.6.tar.gz
cd setuptools-19.6
python3 setup.py build
python3 setup.py install
安装pip
# pip
cd ~
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9
tar xf pip-9.0.1.tar.gz
cd pip-9.0.1
python3 setup.py build
python3 setup.py install
需要注意的是,如果一顿操作下来bash不能识别pip命令,说明pip所在路径/usr/local/bin
没有被加入环境变量
pip换源
可以跳过, 腾讯云自带腾讯源
#pip换源
pip3 install pip -U
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
安装nginx
yum install pcre pcre-devel -y
rpm -qa pcre pcre-devel
yum install -y zlib zlib-devel
yum install mod_ssl -y
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install -y nginx
安装uwsgi
#uwsgi
yum install python36-devel.x86_64 -y
yum install libxml* -y
pip3 install uwsgi
安装django
pip3 install django
配置uwsgi
- 运行uwsgi要在超级用户下运行,否则报错。我在自己的PC上跑的时候就报错,当时百思不得其解。
- 在centos上,确保先安装python36-devel.x86_64 ,才能安装uwsgi。
- 测试运行
uwsgi --http :8001 --chdir /home/tqc/PycharmProjects/django/blog --wsgi-file mysite/wsgi.py --master --processes 1 --threads 1 --stats 127.0.0.1:8000
命令行方式启动,用8001端口作为8000端口的代理
命令过长,设置配置文件:
#uwsgi.ini file
[uwsgi]
# Django-related settings
# the base directory (full path)
chdir = /home/tqc/PycharmProjects/django/blog
# Django's wsgi file
module = mysite.wsgi:application #文件夹.文件名,不带py
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 1
# the socket (use the full path to be safe)
socket = 127.0.0.1:8001 #如果绕过nginx直接解析,用http=...
stats = 127.0.0.1:8000 #用8001端口做8000端口的代理
# ... with appropriate permissions - may be needed
#chmod-socket = 666
#chown-socket = nginx:nginx
# clear environment on exit
vacuum = true
enable-threads = true
如果用http默认访问的80端口代理8000端口,的确可以实现访问了, 但是这样做加载不出css和图片,这时候我们就需要nginx来解析静态文件了
配置nginxsystemctl nginx
启动nginx, 直接访问服务器公网ip, 发现点亮成功
进入配置路径/etc/nginx/conf.d/
,找到default.conf
,进行编辑
server {
listen 80; #监听80端口
server_name localhost;
access_log /var/log/nginx/myweb_access.log;
error_log /var/log/nginx/myweb_error.log;
location / { #对于根目录的解析
include uwsgi_params;
#这行指定uwsgi开放的数据交换接口
uwsgi_pass 127.0.0.1:8001;
#这里与配置uwsgi的ini文件中module内容一致
uwsgi_param UWSGI_SCRIPT mysite.wsgi;
#这里与配置uwsgi的ini文件中chdir内容一致
uwsgi_param UWSGI_CHDIR /home/tqc/PycharmProjects/django/blog;
}
location ^~ /static/ {
root /home/tqc/PycharmProjects/django/blog;
#这行指定静态文件的搜索目录, localhost/static/test.css => /home/test_project/static/test.css
#注意,这里location行中指定的地址也会在转换后的地址中
}
}
上线
需要注意的是django的settings.py
需要添加两个ALLOWED_HOSTS
:公网ip和域名
uwsgi --ini uwsgi.ini &
systemctl nginx start
打开网址 http://www.tqcblog.cn/lyrj/ ,点亮成功