腾讯云 python3+Django
!!!注意:如果已经包含了python3.5,跳过安装3.6版本。
!!!本人安装完3.6后,pip3安装的包始终没法安装到3.6目录下,只能安装到3.5目录下
1,安装python3.6(用编译的方法)
1下载地址
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
2解压缩
tar -xvf Python-3.6.0.tgz
3创建安装的路径
sudo mkdir /usr/local/python3
4进入解压缩后的文件夹,编译安装
./configure --prefix=/usr/local/python3
make
sudo make install
5创建新版本的软连接
1、修改旧版本 sudo mv /usr/bin/python /usr/bin/python_bak 2、创建新的软连接 sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python
3、检查python的版本 python -V python-3.6.0 软连接创建成功
6安装pip3
sudo apt install python3-pip
sudo ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 可以试试 pip3 -V 是对应哪个版本的python
2,Django
1安装Django2.0
sudo pip3 install django
需要用pip3
2创建Django项目
进入/data文件夹,创建名为“helloworld”的项目
cd /data
sudo django-admin startproject helloworld
3修改配置文件
修改 /data/helloworld/helloworld/settings.py 文件权限为其它人可写
sudo chmod 666 /data/helloworld/helloworld/settings.py
ALLOWED_HOSTS = [] 修改为 ALLOWED_HOSTS = ["115.159.157.136"] ,这样可以允许通过 ip 访问4启动django自带web服务器
cd helloworld
sudo python manage.py runserver 0.0.0.0:8080
5使用浏览器访问,就能看到成功显示网页了
http://115.159.157.136:8080/
6 ctrl+C 关闭web服务器
7创建应用,到项目根目录下
sudo python manage.py startapp learn
8把我们新定义的app加到settings.py中的INSTALL_APPS中
修改 helloworld/helloworld/settings.py
# Application definition INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'learn',
]
9将/data/helloworld/learn/views.py修改权限为其它人可写
sudo chmod 666 /data/helloworld/learn/views.py
编辑内容
from django.http.response import HttpResponse def hello(request):
user = request.GET.get('user')
if not user: user = 'world'
return HttpResponse('hello %s' % user)
10修改 urls.py 文件权限
修改 /data/helloworld/helloworld/urls.py 文件权限为其它人可写,并且修改为
sudo chmod 666 /data/helloworld/helloworld/urls.py
from django.contrib import admin
from django.urls import path
from learn import views as learn_views
urlpatterns = [
path('admin/', admin.site.urls),
path('hello',views.hello),
]
11启动web服务器,浏览器输入网址
sudo python manage.py runserver 0.0.0.0:8080
http://115.159.157.136:8080/hello
http://115.159.157.136:8080/hello?user=test
12关闭web服务器
3部署 uwsgi 和 nginx
1使用 pip 安装 uwsgi
sudo pip install uwsgi
2配置 uwsgi
创建文件 /data/helloworld/uwsgi.ini ,并修改权限为其它人可写
sudo touch /data/helloworld/uwsgi.ini
sudo chmod 666 /data/helloworld/uwsgi.ini
编辑输入以下内容
[uwsgi]
chdir = /data/helloworld
module = helloworld.wsgi
socket = 127.0.0.1:8080
master = true
vhost = true
no-site = true
workers = 2
reload-mercy = 10
vacuum = true
max-requests = 1000
limit-as = 512
buffer-size = 30000
pidfile = /tmp/uwsgi.pid
daemonize = /tmp/uwsgi.log
3启动uwsgi
找到uwsgi所在位置,并加入环境变量
whereis uwsgi 得到结果:uwsgi: /usr/local/bin/uwsgi export PYTHONPATH=/usr/local/bin 启动uwsgi
uwsgi --ini /data/helloworld/uwsgi.ini
4安装nginx
sudo apt-get install nginx -y
5添加 nginx 配置文件
创建文件 /etc/nginx/sites-enabled/helloworld.conf ,并修改权限为其它人可写
sudo touch /etc/nginx/sites-enabled/helloworld.conf
sudo chmod 666 /etc/nginx/sites-enabled/helloworld.conf
server {
listen 80;
server_name 115.159.157.136;
charset utf-8;
location / {
uwsgi_pass 127.0.0.1:8080;
include /etc/nginx/uwsgi_params;
client_max_body_size 10m;
}
client_body_timeout 3m;
send_timeout 3m;
proxy_send_timeout 3m;
proxy_read_timeout 3m;
}
6重启nginx服务
sudo systemctl restart nginx
7测试 nginx + uwsgi + django 是否工作正常
http://115.159.157.136/hello
腾讯云 python3+Django的更多相关文章
- Django线上部署教程:腾讯云+Ubuntu+Django+Uwsgi(转载)
网站名称: 向东的笔记本 本文链接: https://www.eastnotes.com/post/29 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议.转载请注明出处! ...
- 腾讯云快速完成python3.6开发环境搭建与django应用部署
[本文出自天外归云的博客园] 部署python3.6.5 腾讯云服务器安装python3竟然要3个多小时!而且一度速度为0…… 于是网查据说是腾讯云服务器连python官网缓慢导致的,所以想找个国内的 ...
- 腾讯云centos6.5下部署django环境
基于腾讯云CentOS6.5的环境 首先说下需要用到的软件 1.gcc环境 腾讯云默认是没有gcc编译器的,需要手动安装一下:yum install gcc 2.python环境 因为我用的cento ...
- Python web项目Django部署在Ubuntu18.04腾讯云主机上
Django2.1 + Python3.6 + nginx + uwsgi 部署到Ubuntu18.04 材料准备 准备一个Django项目 准备一台Ubuntu18.04的主机 ssh连接到主机(腾 ...
- 腾讯云服务器部署 django项目整个流程
CentOS7下部署Django项目详细操作步骤 前记:购买腾讯云服务器,配置自选,当然新用户免费体验半个月,我选择的系统是centos7系统版本, 接下来我们来看整个配置项目流程. 部署是基于:ce ...
- Django+vue在腾讯云上搭建前后端分离项目
最近打算用Django+vue搭建一个个人主站,在此记录一下搭建项目的整个过程. 一 开发环境: 腾讯云Centos 7 Python 3.7 Django ...
- 创建Django项目并将其部署在腾讯云上
这段时间在做scrapy爬虫,对爬出来的数据基于Django做了统计与可视化,本想部署在腾讯云上玩玩,但是因为以前没有经验遇到了一些问题,在这里记录一下: 首先说下Django的创建与配置: 1. 创 ...
- 腾讯云centos安装python3.6和pip
不知道腾讯云的centos和阿里云的centos一不一样,反正两个云平台的Ubuntu系统是不一样的,照着同样的教程敲,往往掉坑里. 安装一些centos依赖库: 这一步很关键,很多报错往往都因为少了 ...
- 阿里云 centos7 django + uWSGI+Nginx + python3 部署攻略
centos7+nginx+python3+django+uwsgi配置Django 项目部署 1.租的服务器(选择centos)的话,需要在阿里云后台控制台开放几个端口,克隆一下已开放的端口,t ...
随机推荐
- HDU 1028 整数拆分问题 Ignatius and the Princess III
Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ...
- tomcat8 管理页面403 Access Denied的解决方法
安装tomcat,配置好tomcat环境变量以后,访问manager app页面,出现403 Access Denied错误,解决的方法如下: 首先在conf/tomcat-users.xml文件 ...
- Apache服务器的Options 的 Indexes FollowSymLinks详解
禁止显示Apache目录列表 - Indexes FollowSymLinks 如何修改目录的配置以禁止显示 Apache 目录列表. 缺省情况下如果你在浏览器输入地址: http://localho ...
- javascript中判断变量是否存在的正确方式
在Javascript中,我们通常判断一个变量是否存在(即不为null或者undefined),往往是这样判断的 if(tomy){ console.log(obj.name); } 这种写法在大部分 ...
- Hibernate常用方法之_修改
1.使用session的saveOrUpdate方法 public void updateUser(User user){ Session session = null; Transaction tr ...
- 创建一个doc对象时候 如果读取了一个已存在的xml对象时候 该xml对象的结构已存在doc中 当改变该doc结构时候 不需要创建新的doc对象
创建一个doc对象时候 如果读取了一个已存在的xml对象时候 该xml对象的结构已存在doc中 当改变该doc结构时候不 需要创建新的doc对象 直接添加即可 他会同步过去
- 【bzoj4750】密码安全 单调栈
题目描述 模10^9+61 输入 第一行包含一个正整数 T ,表示有 T 组测试数据. 接下来依次给出每组测试数据.对于每组测试数据: 第一行包含一个正整数 n . 第二行包含 n 个非负整数,表示 ...
- 【题解】SDOI2011消耗战
虚树模板题~洛谷P2495 第一次写虚树,感觉好厉害呀~首先,这道题目的树形dp是非常显然的,要控制一个点&其子树所有点,要么在子树内部割边,要么直接切点该点与父亲的连边.所以dp[u]表示控 ...
- Brainf**k(一位数求max)
题目大意:给你两个一位数,要你求出其中的较大值(使用$Brainf**k$) ($Brainf**k$简介,相当于有一个数组和一个指针,","为把数组当前位赋值为读入的数,&quo ...
- [BZOJ3829][Poi2014]FarmCraft 贪心
这个题应该是很容易想到贪心的,只要可是怎么贪才是科学的呢?我们分析一下题干,对于每个边只能一进一出因此,对于树上的一棵子树,我们只要一进子树就必须遍历完,因此我们只能进行一遍 dfs() 然后我们发现 ...