樹莓派搭建python環境服務器


樹莓派搭建python環境服務器

服務器結構大致為:django+uwsgi+nginx+python+sqlite

配置python環境

系統本身自帶了python2.7和python3.5。在這里我們搭建python3.5的環境。所以需要安裝pip3,在安裝pip3之前需要setuptools支持。
安裝setuptools如下命令:

1 ~:wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
2 ~:tar -zxvf setuptools-19.6.tar.gz
3 ~:cd setuptools-19.6.tar.gz
4 ~:python3 setup.py build
5 ~: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.2.tar.gz
cd pip-8.0.2
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:2:20: 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
來源:簡書


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM