<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ls /proc &#187; django</title>
	<atom:link href="http://www.lsproc.com/blog/tag/django/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lsproc.com/blog</link>
	<description>lsproc.com</description>
	<lastBuildDate>Fri, 18 Nov 2011 09:22:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Dreamhost 上编译python并安装django</title>
		<link>http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/</link>
		<comments>http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 13:56:11 +0000</pubDate>
		<dc:creator>lostsnow</dc:creator>
				<category><![CDATA[Linux&Webserver]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[dreamhost]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.lostk.com/blog/?p=151</guid>
		<description><![CDATA[转载时请标明文章原始出处和作者信息, 作者: lostsnow.http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/ 1. 升级python到2.5.2: 用Putty登录到DreamHost的Shell控制台执行如下的命令: mkdir opt cd opt mkdir packages cd packages wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz tar -xzvf Python-2.5.2.tgz cd Python-2.5.2 ./configure -prefix=$HOME/opt make make install python 2.5已经安装好了。把python 2.5设置为默认版本： vim ~/.bash_profile 然后，在~/.bash_profile里加入一条： export PATH=$HOME/opt/bin/:$PATH 重新载入配置文件： source ~/.bash_profile 检验一下是否成功： $python -V &#8230; <a href="http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>转载时请标明文章原始出处和作者信息, 作者: <a href="http://www.lsproc.com/blog/">lostsnow</a>.<br /><a href="http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/">http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/</a></p>
<p><strong>1. 升级python到2.5.2:</strong></p>
<p>用Putty登录到DreamHost的Shell控制台执行如下的命令:</p>
<pre class="brush: bash">
mkdir opt
cd opt
mkdir packages
cd packages
wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz
tar -xzvf Python-2.5.2.tgz
cd Python-2.5.2
./configure -prefix=$HOME/opt
make
make install
</pre>
<p>python 2.5已经安装好了。把python 2.5设置为默认版本：</p>
<pre class="brush: bash">
vim ~/.bash_profile
</pre>
<p>然后，在~/.bash_profile里加入一条：</p>
<pre class="brush: bash">
export PATH=$HOME/opt/bin/:$PATH
</pre>
<p>重新载入配置文件：</p>
<pre class="brush: bash">
source ~/.bash_profile
</pre>
<p>检验一下是否成功：</p>
<pre class="brush: bash">
$python -V
Python 2.5.2
</pre>
<p><strong>2. 安装python-Mysql</strong></p>
<pre class="brush: bash">
cd ~/opt/packages
wget http://internap.dl.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.2.tar.gz
tar xvzf MySQL-python-1.2.2.tar.gz
cd MySQL-python-1.2.2
python setup.py install
</pre>
<p><strong>3. 安装django</strong></p>
<pre class="brush: bash">
cd ~/opt/packages
wget http://www.djangoproject.com/download/1.0/tarball/
tar -xzvf Django-1.0.tar.gz
cd Django-1.0
python setup.py install
</pre>
<p>在python交互环境下查看django的版本，以测试安装配置的准确性。</p>
<pre class="brush: bash">
$python
&gt;&gt;&gt;import django
&gt;&gt;&gt;django.VERSION
(1, 0, &#039;final&#039;)
</pre>
<p><strong>4. 创建Django项目</strong></p>
<pre class="brush: bash">
mkdir ~/django_projects
cd ~/django_projects
django-admin.py startproject myproject
chmod 600 myproject/settings.py
</pre>
<p>vim myproject/settings.py :</p>
<pre class="brush: python">
DATABASE_ENGINE = &#039;mysql&#039;           # &#039;postgresql_psycopg2&#039;, &#039;postgresql&#039;, &#039;mysql&#039;, &#039;sqlite3&#039; or &#039;oracle&#039;.
DATABASE_NAME = &#039;dbname&#039;             # Or path to database file if using sqlite3.
DATABASE_USER = &#039;dbuser&#039;             # Not used with sqlite3.
DATABASE_PASSWORD = &#039;dbpass&#039;         # Not used with sqlite3.
DATABASE_HOST = &#039;dbhost&#039;             # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = &#039;&#039;             # Set to empty string for default. Not used with sqlite3.

TIME_ZONE = &#039;Asia/Shanghai&#039;

MEDIA_ROOT = &#039;/home/yourusername/lostk.com/media/&#039;
MEDIA_URL = &#039;http://www.lostk.com/media/&#039;

TEMPLATE_DIRS = (
    # Put strings here, like &quot;/home/html/django_templates&quot; or &quot;C:/www/django/templates&quot;.
    # Always use forward slashes, even on Windows.
    # Don&#039;t forget to use absolute paths, not relative paths.
    &quot;/home/yourusername/django_projects/myproject_tpl&quot;
)
</pre>
<p>在~/.bash_profile中加入环境变量： </p>
<pre class="brush: bash">
export PYTHONPATH=$PYTHONPATH:$HOME/django-projects
export DJANGO_SETTINGS_MODULE=myproject.settings
</pre>
<p>重新载入配置文件：</p>
<pre class="brush: bash">
source ~/.bash_profile
</pre>
<p>同步数据库并创建管理员</p>
<pre class="brush: bash">
cd ~/django_projects/myproject
django-admin.py syncdb
</pre>
<p><strong>5. 配置FastCGI</strong></p>
<pre class="brush: bash">
cd ~/lostk.com/
wget http://svn.saddi.com/py-lib/trunk/fcgi.py
chmod 755 fcgi.py
</pre>
<p>创建名为dispatch.fcgi, 内容如下：</p>
<pre class="brush: python">
#!/home/yourusername/opt/bin/python
import sys
sys.path += [&#039;/home/yourusername/django_projects&#039;]
from fcgi import WSGIServer
from django.core.handlers.wsgi import WSGIHandler
import os
os.environ[&#039;DJANGO_SETTINGS_MODULE&#039;] = &#039;myproject.settings&#039;
WSGIServer(WSGIHandler()).run()
</pre>
<pre class="brush: bash">
chmod 755 dispatch.fcgi
</pre>
<p>创建.htaccess文件内容如下：</p>
<pre class="brush: bash">
RewriteEngine On
RewriteBase /
RewriteRule ^(media/.*)$ - [L]
RewriteRule ^(admin_media/.*)$ - [L]
RewriteRule ^(dispatch\.fcgi/.*)$ - [L]
RewriteRule ^(.*)$ dispatch.fcgi/$1 [L]
</pre>
<p>重启python激活所有改动<br />
$pkill python</p>
<p>最后用命令测试：</p>
<pre class="brush: bash">
$./dispatch.fcgi
</pre>
<p>如果返回的是一个django页面的字符串。<br />
再通过浏览器访问http://lostk.com<br />
出现的django提示<br />
配置成功。</p>
<p>Django 管理</p>
<pre class="brush: bash">
ln -s ~/opt/packages/Django-1.0/django/contrib/admin/media ~/lostk.com/admin_media
</pre>
<p>编辑配置文件<br />
vim ~/django-projects/myproject/settings.py :</p>
<pre class="brush: bash">
ADMIN_MEDIA_PREFIX = &#039;/admin_media/&#039;

INSTALLED_APPS = (
    &#039;django.contrib.auth&#039;,
    &#039;django.contrib.contenttypes&#039;,
    &#039;django.contrib.sessions&#039;,
    &#039;django.contrib.sites&#039;,
    &#039;django.contrib.admin&#039;,
)
</pre>
<p>更新配置</p>
<pre class="brush: bash">
cd ~/django_projects/myproject
django-admin.py syncdb
</pre>
<pre class="brush: bash">
vim ~/django_projects/myproject/urls.py

from django.contrib import admin
admin.autodiscover()

(r&#039;^admin/(.*)&#039;, admin.site.root),
</pre>
<p>重启python激活所有改动<br />
$pkill python</p>
<p>访问 lostk.com/admin 即可登录管理
<p>-- EOF --</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li>2010-02-01 -- <a href="http://www.lsproc.com/blog/python_spider/" title="python 抓取页面">python 抓取页面</a> (0)</li><li>2008-11-10 -- <a href="http://www.lsproc.com/blog/python_pil/" title="python图形处理库Python Imaging Library (PIL)">python图形处理库Python Imaging Library (PIL)</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.lsproc.com/blog/configure_python_and_django_on_dreamhost/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

