树莓派搭建python环境服务器

服务器结构大致为:django+uwsgi+nginx+python+sqlite

配置python环境

系统本身自带了python2.7和python3.5。在这里我们搭建python3.5的环境。所以需要安装pip3,在安装pip3之前需要setuptools支持。
安装setuptools如下命令:

 ~: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.tar.gz
~:python3 setup.py build
~:python3 setup.py install

后安装pip

wget --no-check-certificate  https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
tar -zxvf pip-8.0..tar.gz
cd pip-8.0.
python3 setup.py build
python3 setup.py install

*******************注意*****************
我门下载的路径需要注意,你当前在什么路径下,那么wget下载的软件包就在哪里。这里要注意一点,在我们没有指定安装路径的时候,系统会默认安装在 /usr/local 里面。
*******************注意*****************
sudo pip3 install --upgrade pip 更新pip3

安装django

sudo pip3 install django

安装uwsgi

sudo pip3 install uwsgi
*******************注意*****************
在安装uwsgi的时候你可能会报一个这样的错。

plugins/python/uwsgi_python.h::: fatal error: Python.h: No such file or directory
#include <Python.h>

原因是缺少 python-dev这个库,输入如下命令安装:
sudo apt-get install python3-dev
*******************注意*****************

安装nginx

sudo apt-get install nginx


测试uwsgi

新建一个test.py文件如下命令:
sudo nano test.py
编辑如下内容:

# test.py
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World"]

输入如下命令:
uwsgi --http :8000 --wsgi-file test.py
在浏览器输入地址,格式如下:
http://树莓派的ip地址:8000
eg: http://192.168.1.107:8000
如果出现Hello World就代表成功了。

*******************提示*****************
关闭uwsgi包括关闭服务器都是方法:control + c
*******************提示*****************

测试django

创建django项目
django-admin.py startproject helloworld
在helloworld目录下创建应用,比如blog:
python3 manage.py startapp blog
进入项目
cd helloworld
*******************目录文件介绍*****************
manage.py:
一个命令行工具,通过它可以调用Django shell和数据库等。键入python manage.py -h,查看它的相关功能。

init.py:
让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。这是一个空文件,一般你不需要修改它。

settings.py:
项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。

urls.py:
django项目的URL设置。 可视其为你的django网站的目录, 负责把URL模式映射到应用程序。

wsgi.py:
服务器网关接口(Python Web Server Gateway Interface),web服务器和web服务程序或者框架之间的一种简单而通用的接口。
*******************目录文件介绍*****************

测试django
python3 manage.py runserver 192.168.1.107:8000
*******************注意*****************
你可能会出现如下提示:

You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.

执行:python3 manage.py migrate
然后你会发现在上一层的helloworld目录下面多了一个文件dg.sqlite3

然后重新启动服务执行:
python3 manage.py runserver 192.168.1.107:8000
运行成功显示如下信息

System check identified no issues (0 silenced).
December 21, 2014 - 08:56:00
Django version 1.7.1, using settings 'my_blog.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

你可能会出现这个提示:
Invalid HTTP_HOST header: '192.168.1.107:8000'. You may need to add '192.168.1.107' to ALLOWED_HOSTS
解决方法如下:
cd到helloworld目录文件下找到settings.py文件并打开。
sudo nano settings.py
找到ALLOWED_HOSTS = ['']
在这里请求的host添加* 改为如下:
ALLOWED_HOSTS = ['*']

control+x保存退出
*******************注意*****************
出现如下界面代表你安装成功

作者:bananaTan
链接:https://www.jianshu.com/p/d966632320cf
来源:简书

树莓派搭建python环境服务器的更多相关文章

  1. Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器

    Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器 闲着无聊的时候部署了一个Django项目玩,用vm虚拟机部署的. 准备工作 我使用的系统是Ubuntu16 ...

  2. Sublime Text 2下搭建Python环境常见错误

    Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应. 关于Python编程环境的配置,网上很容易搜索到.先默 ...

  3. 4、搭建Python环境

    搭建Python环境 Linux环境 大多Linux发行版均默认安装了Pthon环境.如想下载不同的版本,可到www.python.org下载.软件安装方法参照Linux软件安装. 输入Python可 ...

  4. window搭建python环境

    在window开发python代码,搭建python环境! 01.下载python-win https://www.python.org/downloads/windows/ http://ipyth ...

  5. 【OS X系统】Xcode中搭建Python环境。

    虽然按照网上教程一步一步来,但还是遇到了几个错误点,现整理出来,主要是自己做个笔记,同时也希望能帮助到其他像我一样第一次在Xcode上搭建Python环境的人.首先感谢原作者:https://zhid ...

  6. Linux 笔记 #01# 搭建 Python 环境 & vim 代码高亮

    日常收集 vim editor: How do I enable and disable vim syntax highlighting? 搭建 Python 环境 vim editor: How d ...

  7. source insight搭建python环境

    SI是一个受到广泛欢迎的代码阅读/编辑器,那么能不能用SI来进行python开发呢,经过一晚上的试验,终于实现了这一功能. 1.python的语法高亮 source insight 4.0版本已经默认 ...

  8. 开发工具--搭建python环境

    工具|搭建python环境 实现python2版本与python3版本的环境搭建. 正文 1.Python下载 官网: www.python.org 下载: ( 64位3.5.2Windows x86 ...

  9. 怎么搭建python环境?很简单,就几步的事

    现在学习python的人越来越多了,而学习python必备的就是搭建python环境,那么,到底怎么搭建python环境呢? 首先,你需要有安装包,这个去官网下载就可以了,如果不会的话,可以看文章底部 ...

随机推荐

  1. JS中的let变量和var变量的区别

    let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]]; let允许你声明一个作用域被限制在块级中的变量.语句或者表达式.在F ...

  2. GoCN每日新闻(2019-11-04)

    GoCN每日新闻(2019-11-04) GoCN每日新闻(2019-11-04)   1. Go中垃圾收集器是如何标记内存的 https://medium.com/a-journey-with-go ...

  3. [已解决] Python logging 重复打印日志信息

    问题描述 问题代码如下: def get_logger(logger_name): """得到日志对象""" logger = loggin ...

  4. 关于window.getSelection

    window.getSelection(),返回一个Selection对象,表示用户选择的文本范围或光标的当前位置. selection对象先来看下面两个selection结果:selection对象 ...

  5. bash: ip: command not found

    Centos安装 # yum install iproute2 iproute2-doc Ubuntu安装 # apt-get install iproute2 iproute2-doc

  6. <每日 1 OJ> -LeetCode 28. 实现 strStr()

    题目: 实现 strStr() 函数. 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存 ...

  7. [技术博客]Pyqt中View类别容器和Widget类别容器的区别

    Pyqt中View类别容器和Widget类别容器的区别 简介 在beta迭代中,我们选择用pyqt5来重写alpha迭代中使用tkinter库编写的界面. ​ 按钮之类的与tkiner使用无异,在显示 ...

  8. mysql中包含长字段索引的优化

    不同于oracle,在mysql的Innodb存储引擎中,对索引的总长度有限制.在mysql 5.7中(https://dev.mysql.com/doc/refman/5.7/en/innodb-r ...

  9. kaggle, gmail, 烟雨朦胧

    kaggle, gmail, 烟雨朦胧 刚才为了体验kaggle,用gmail重新登录,需要验证十几年前在桂林使用的手机号,竟然找到了,终于又可以上了. 那是一个在烟雨江南里努力奋斗而又迷失自我不堪回 ...

  10. PHP计算思源字体宽度, 并把文字绘制到图片上

    2019-6-19 9:18:54 星期三 思源字体是一套开源的字体, 那字体宽度是多少呢? 测试场景, 将包含汉字, 数字, 大小写字符的一段文字写到图片中去, 但不能出现超出的情况,  这就要计算 ...