python2.4 好老的python版本,試試python2.6或者python2.7安裝django? 一般有兩種方法安裝python庫:
1,easy_install
sudo easy_install django
2,linux自帶的軟體包安裝工具。ubuntu下:
sudo apt-get install python-django
Ⅱ Django 在linux下面安裝出現 報錯!
如果你沒有對django的文件進行過修改,請先確認python的版本,目前django1.5可以支持python2系列,以及python3.2,目測你的django是1.4.5的,你要看下你的python是不是3+的
Ⅲ 如何搭建django框架 linux
第一步安裝Django: 下載包:Django-0.96.1.tar.gz 解壓這個包:tar zxf Django-0.96.1.tar.gz -C /usr/tmp 安裝: cd /usr/tmp cd Django-0.96.1 su python setup.py install 檢查安裝是否正確: python >>> import django >>> django.VERSION ...
Ⅳ linux下怎麼安裝django
第一步安裝Django:
下載包:Django-0.96.1.tar.gz
解壓這個包:tar zxf Django-0.96.1.tar.gz -C
/usr/tmp
安裝:
cd /usr/tmp
cd Django-0.96.1
su
python setup.py install
檢查安裝是否正確:
python
>>> import django
>>> django.VERSION
(0, 96.099999999999994, None)
>>>
第二步安裝MySQL:
下載包:mysql-5.1.23-rc.tar.gz
解壓:tar zxf mysql-5.1.23-rc.tar.gz -C
/usr/tmp
安裝:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip
shell> cd mysql-VERSION
shell> ./configure
--prefix=/usr/local/mysql
shell> make
這一步驟會需要一段時間,你可以選擇去吃頓飯,但不要吃得太快。
shell> make install
shell> cp support-files/my-medium.cnf
/etc/my.cnf
shell> cd /usr/local/mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> bin/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql var
shell> bin/mysqld_safe --user=mysql &
cp /usr/local/mysql/lib/mysql/libmysqlclient.so.16
/usr/lib/.
cp /usr/local/mysql/lib/mysql/libmysqlclient_r.so.16
/usr/lib/.
第三步安裝Apache
下載包:
httpd-2.2.8.tar.gz
解壓:
tar zxf httpd-2.2.8.tar.gz -C
/usr/tmp
安裝:
./configure
--prefix=/usr/local/httpd
make
make install
第四步安裝mod_python
下載包:
mod_python-3.3.1.tgz
解壓:
tar zxf mod_python-3.3.1.tgz -C
/usr/tmp
安裝:
./configure
--with-apxs=/usr/local/httpd/bin/apxs
make
make install
第五步安裝MySQLdb
下載包:
MySQL-python-1.2.2.tar.gz
setuptools-0.6c5-py2.4.egg
解壓:
tar zxf MySQL-python-1.2.2.tar.gz
-C /usr/tmp
cp setuptools-0.6c5-py2.4.egg
/usr/tmp/MySQL-python-1.2.2
安裝:
cd
/usr/tmp/MySQL-python-1.2.2
python setup.py build
su
python setup.py install
chmod 644
/root/.python-eggs/MySQL_python-1.2.2-py2.4-linux-i686.egg-tmp/_mysql.so
安裝差不多就是這樣子。
Ⅳ linux django uwsgi+nginx 怎麼調試
1. python和django的環境搭建
(1)下載anaconda3並安裝
wget https://3230d63b5fc54e62148e-.ssl.cf1.rackcdn.com/Anaconda3-2.3.0-Linux-x86_64.sh
sh Anaconda3-2.3.0-Linux-x86_64.sh
一路enter鍵,然後提示是否加入到環境變數時,輸入yes即可。
(2)安裝django
直接pip install django
安裝成功之後就可以新建項目
django-admin startproject demosite
cd demosite
python manage.py startapp blog
python manage.py migrate (要執行這個命令,讓django生成可運行的app,否則後面使用uwsgi會報錯)
(3)運行django
python manage.py runserver
curl 127.0.0.1:8000進行如果可以正常訪問,就說明django安裝成功。
2. 安裝uwsgi
(1)centOS
yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
pip install uwsgi
uwsgi --version #查看 uwsgi 版本
(2)test.py
然後,Run uWSGI:
uwsgi --http :8000 --wsgi-file test.py
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return ["Hello World"] # python2
#return [b"Hello World"] # python3
(3)ubuntu可以能會出現錯誤:
如果出現錯誤,!!! no internal routing support, rebuild with pcre support !!!
sudo apt-get install libpcre3 libpcre3-dev
sudo pip uninstall uwsgi
sudo apt-get remove uwsgi
sudo pip install uwsgi
(4)測試
1) 打開下面url,瀏覽器上應該顯示hello world
curl http://127.0.0.1:8000 如果安裝httpie模塊的話使用http http://127.0.0.1:8000
如果顯示正確是Hello World,說明上面的環節是暢通的
2) 測試django
默認使用django新建工程會在app下面生成一個wsgi.py的文件
uwsgi --http :8000 --wsgi-file wsgi.py 直接這樣也會報錯
uwsgi --http :8000 --wsgi-file appname/wsgi.py
打開瀏覽器輸入http://127.0.0.1:8000 如果現實正確說明web client <-->uwsgi <---> django是暢通的
3. 安裝配置nginx
(1)安裝
wget http://nginx.org/download/nginx-1.9.5.tar.gz
tar xf nginx-1.9.5.tar.gz
cd nginx-1.9.5
./configure --prefix=/usr/local/nginx --with-http_stub_status_mole --with-http_gzip_static_mole
make && make install
或者參考
http://cantgis.blog.51cto.com/5788192/1540004
(2)配置文件
vi /usr/local/nginx/conf/nginx.conf
一般來說加入個server就OK了
參考配置如下
user root;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid logs/nginx.pid;
events {
use epoll;
worker_connections 65535;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 8099;
server_name 10.117.52.157; ##對外訪問的IP和埠號
access_log /tmp/cms/access.log;
error_log /tmp/cms/error.log;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8088;
uwsgi_read_timeout 300;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
#error_page 500 502 503 504 /registration/500.html;
#location = /registration/500.html {
# root html;
#}
location /static/ {
alias /root/cms/cms/static/;
index index.html index.htm;
}
location /media/ {
alias /root/cms/cms/media/;
}
}
}
(3)運行and 重啟
/usr/local/nginx/sbin/nginx
啟動: nginx start
重啟: nginx -s reload
4. 使用uwsgi的配置文件運行django
在確保nginx運行之後,就可以通過uwsgi來運行django了。nginx 在最外層接收請求,靜態的自己處理,動態的通過 socket埠交給uwsgi來處理。
配置文件內容如下
[uwsgi]
socket=:8088 #要和nginx對應的IP和埠號一致
chdir=/root/cms/cms #APP的目錄
mole=cms.wsgi #wsgi.py文件位置
touch-reload=/root/cms/cms/reload #重啟只要輸入命令touch reload文件即可
processes=4
threads=2
daemonize=/tmp/cms/wsgi.log #日誌文件位置
放在APP的上一級目錄
直接運行uwsgi --ini uwsgi.ini 即可
Ⅵ linux怎樣升級django版本
第一步安裝Django: 包:Django-0.96.1.tar.gz 解壓這個包:tar zxf Django-0.96.1.tar.gz -C /usr/tmp 安裝: cd /usr/tmp cd Django-0.96.1 su python setup.py install 檢查安裝是否正確: python >>> import django >>> django.VERSION (0, 96., None) >>> 第二步安裝MySQL: 包:mysql-5.1.23-rc.tar.gz 解壓:tar zxf mysql-5.1.23-rc.tar.gz -C /usr/tmp 安裝: shell> groupadd mysql shell> useradd -g mysql mysql shell> gunzip shell> cd mysql-VERSION shell> ./configure --prefix=/usr/local/mysql shell> make 這一步驟會需要一段時間,你可以選擇去吃頓飯,但不要吃得太快。 shell> make install shell> cp support-files/my-mediumf /etc/myf shell> cd /usr/local/mysql shell> chown -R mysql . shell> chgrp -R mysql . shell> bin/mysql_install_db --user=mysql shell> chown -R root . shell> chown -R mysql var shell> bin/mysqld_safe --user=mysql cp /usr/local/mysql/lib/mysql/libmysqlclie
Ⅶ 如何在Linux上使用Nginx和Gunicorn託管Django應用
apt-get
伺服器拿到手後第一件事就是更新apt-get,要換源什麼的自己搜一大堆。之前因為系統不小心選成了Ubuntu 10.04了,遇到一大堆問題,後來換到12.04一切順利。
apt-get update
pip
pip還是建議更換源,速度是飛一般的感覺。具體方法可以看看我之前介紹的那篇文章《Pythoner的福利,豆瓣的PyPI源》
sudo apt-get install python-pip
Django
Django不用說肯定是用pip裝,我一般是用的最新版,這樣就可以了。
sudo pip install django
Nginx
首先給默認的Nginx配置備個份,這是好習慣。目錄位於/etc/nginx/sites-available/default
cp /etc/nginx/sites-available/default default.bak
然後Vim編輯
vim /etc/nginx/sites-available/default
server {
listen 80;
server_name www.isaced.com;
access_log /var/log/nginx/isaced.log;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /static/ {
root /data/isaced; #Django項目所在目錄
}
以上是最簡單的Nginx配置,目的是為能跑起來就行,更多其他詳細配置還請參照其他文章。
Gunicorn
Gunicorn是一個朋友(CloverStd)推薦的,一個開源Python WSGI UNIX的HTTP伺服器,Github倉庫地址在這,傳說速度快(配置快、運行快)、簡單,默認是同步工作,支持Gevent、Eventlet非同步,支持Tornado,官方有很詳細的文檔可以參閱。
需要在你的Django項目的settings.py中的INSTALLED_APPS加入:gunicorn
gunicorn --worker-class=gevent isaced.wsgi:application
--worker-class
指定工作方式,這里我用的gevent
如果提示You need gevent installed to use this worker則表示你還沒有安裝gevent。
isaced.wsgi:application
這里是指你的項目名,在Django創建項目的時候會自動生成對應名字文件夾中的wsgi.py,這里就是指的它。
###nohup
nohup是一個Linux命令,用來不掛斷地運行某條命令。這里我們用它來執行gunicorn,來保持gunicorn進程不會被掛斷。
nohup gunicorn --worker-class=gevent NSLoger.wsgi:application -b 127.0.0.1:8000&
--worker-class來指定工作方式為gevent,-b指定地址和埠號。
注意:在尾部加上&(and)字元表示後台運行
執行這條命令後可以用ps命令查看進程,就能看到gunicorn了~
Start
好了,以上就是整個伺服器的配置了。然後我們重啟下Nginx,刷新頁面就能看到你的Django App了。
sudo service nginx restart
Ⅷ PYTHON使用日記之怎麼找到linux系統上django的安裝路徑
python的話,你可以把python的安裝環境加到系統變數(我記得是自動添加的,可以在dos下直接運行python)
至於django的話,可以直接運行django-admin startproject mysite2(django-admin不用.py),不用python django-admin.py startproject mysite2(如果要的話,需要在python安裝包下的script添加到系統環境變數)