1.安装python
我安装的是python2.5
到http://www.python.org/download/下载python,我用的是win2下的python2.5.1
是.exe的安装,下一步下一步就可以了。
安装之后把 $\python25\加到环境变量中去,方便命令行执行python命令;把
$\python25\Scripts加到环境变量中去,方便Scripts中脚本命令。
2.安装pythonIDE
共介绍三种
2.1 eclipse + pydev
eclipse(http://www.eclipse.org/) +
pydev(http://pydev.sourceforge.net/download.html)
2.2 pythonwin (http://sourceforge.net/projects/pywin32/ )
2.3 UliPad
3.Django及web项目
3.1 安装django(http://www.djangoproject.com)
第一种安装方法:
cd到django目录下,执行python setup.py install
cd python25\Lib\site-packages\
把Lib\site-packages\django\bin\目录下的django-admin拷贝到 python25\Scripts\
第二中安装方法:
拷贝django\build\lib 下的django整个文件夹到 python25\Lib\site-packages\
拷贝django\build\scripts-2.5\ 下的django-admin文件到 python25\Scripts\
检查django是否安装成功:
进入shell,执行import django,成功执行则安装成功。
3.2 创建web项目(使用django自带的服务器)
E:\mysite>django-admin.py startproject testsite
生成了一个testsite目录,包含__init__.py, manage.py, settings.py, urls.py
__init__.py 说明mysite是一个python module
manage.py 管理应用程序
settings.py 配置应用程序
urls.py URL映射
E:\mysite>python manage.py runserver
查看http://localhost:8000/页面
显示It worked!则成功
默认使用端口是8000,修改默认使用端口为8080: python manage.py runserver 8080
3.3 创建web项目(Apache + mod_python)
3.3.1 安装Apache
下载地址 : http://archive.apache.org/dist/httpd/binaries/win32/
apache_2.2.6-win32-x86-no_ssl.msi安装,下一步,下一步……
3.2 安装mod_python
下载地址 :http://www.modpython.org/
mod_python-3.3.1.win32-py2.5-Apache2.2.exe 安装时要注意,要选择Apache的安装目录
3.3 部署web项目
修改Apache/conf/httpd.conf:
注意:在修改做备份,以防万一修改错误!
设置MaxRequestsPerChild 1,这样可以在开发阶段不用重启Apache进行测试,但是运行比较慢
添加LoadModule python_module modules/mod_python.so
去掉注释Include conf/extra/httpd-vhosts.conf
修改Apache/conf/extra/httpd-vhosts.conf:
注意:用的例子是前面3.2中的web项目。
<VirtualHost 127.0.0.1:80>
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
PythonPath "['E:/mysite'] + sys.path"
SetEnv DJANGO_SETTINGS_MODULE testsite.settings
PythonAutoReload Off
PythonDebug On
</Location>
</VirtualHost>
from django.http import HttpResponse def index(request): 修改urls.py: urlpatterns = patterns('', ============================================================
[常见错误现象1] 表象: 访问了http://localhost:80/mysite/ 后,假如发现图片没有加载,或者css没有应用上,并且httpd.conf文件中Location的配置绝对路径肯定没错。 解释: 第一, 首先检查httpd.conf配置Alias的配置, 看看Alias设置的路径是否正确, Alias /site_media c:/django/myproject/media 请保证您附加的这个路径肯定是你的图片或者css存放的路径。 其次,请检查您的django项目myproject目录下的settings.py,保证MEDIA_ROOT、STATIC_PATH、TEMPLATE_DIRS这三个参数指向的绝对路径正确无误。 最后,如果上面的参数都没错,却还是不行。那么请您检查Apache的日志文件 Apache2.2\logs\error.log 如果您发现有这样的错误提示: 错误日志 [Mon Nov 20 17:27:08 2006] [error] [client 127.0.0.1] client denied by server configuration: c:/Django/myproject/media/css/global.css, referer: http://localhost:80/mysite/ 那么说明是因为对这些资源文件的访问被拒绝了。 此时,请您浏览 http://localhost:80/site_media/css/global.css ,如果遇到了HTTP 403错误,就说明是权限问题。 此时,请到httpd.conf,增加如下配置来允许静态资源文件夹被访问: 增加的配置行 # 否则会得到这样的错误:client denied by server configuration: c:/Django/myproject/media/css/global.css, referer: http:/ /localhost:80/mysite/ <Directory "c:/Django/myproject/media/"> Order Deny,Allow Allow from all </Directory> 重启Apache服务。 [常见错误现象2] 表象: 访问了http://localhost:80/mysite/ 后,直接页面报告如下错误: 页面错误输出 Traceback (most recent call last): File “C:\Python24\Lib\site-packages\mod_python\apache.py”, line 299, in HandlerDispatch File “c:\django_src\django\core\handlers\modpython.py”, line 163, in handler File “c:\django_src\django\core\handlers\modpython.py”, line 125, in __call__ File “c:\django_src\django\conf\__init__.py”, line 27, in __getattr__ File “c:\django_src\django\conf\__init__.py”, line 54, in _import_settings File “c:\django_src\django\conf\__init__.py”, line 82, in __init__ EnvironmentError: Could not import settings ‘myproject.settings’ (Is it on sys.path? Does it have syntax errors?): No module named myproject.settings 这是开始配置django+apache最容易遇到的问题,:D。 解释: 这是因为apache在系统目录下找不到myproject/settings.py文件。 首先检查PythonPath设置的路径是否正确: PythonPath "sys.path+['c:/django']" 注意,这个'c:/django'路径实际是我们的项目路径c:/django/myproject的上一级目录!不要写错了。 增加的配置行 # 但是对于PythonPath,必须设置成这个目录的上一级目录! # this site url:http://localhost:80/mysite/ <Location "/mysite/"> SetHandler python-program PythonPath "sys.path+['c:/django']" PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE myproject.settings PythonInterpreter mysite PythonDebug On </Location> 配置Django到Apache的步骤: 1: 网络上有很多说可以利用Apache和mod_python源代码来编译安装mod_python的,但是如果你仅仅想快速安装,那么请从 http://www.apache.org/dist/httpd/modpython/win/3.2.10/ 直接下载 mod_python-3.2.10.win32-py2.4-apache2.2.exe 文件,运行这个exe即可顺利把mod_python安装到Python2.4以及Apache2.2; 由于GFW的封锁,可能您无法访问apache网站,那么可以从这里下载: http://www.cnblogs.com/Files/zhengyun_ustc/mod_python-3.2.10.win32-py2.4-apache2.2.rar 3: 我们用 Python django-admin.py startproject myproject 命令,在C盘的django目录下创建了一个Django项目myproject。我们把它引用的图片文件和css文件等静态资源都放在myproject文件夹下的media目录中。 此时,将myproject目录下的settings.py文件中的这三个参数修改一下,主要是为了从相对路径变成绝对路径: 修改的配置行 ''' 将相对路径改为绝对路径。主要有: MEDIA_ROOT TEMPLATE_DIRS STATIC_PATH ''' # Absolute path to the directory that holds media. # Example: "/home/media/media.lawrence.com/" MEDIA_ROOT = 'c:/django/myproject' STATIC_PATH = 'c:/django/myproject/media' TEMPLATE_DIRS = ( # Put strings here, like "/home/html/django_templates". # Always use forward slashes, even on Windows. 'c:/django/myproject/templates', ) 切记切记,一定要保证这三个参数是绝对路径。 4: 配置Apache的httpd.conf配置文件: 首先,在“Dynamic Shared Object (DSO) Support”的配置下增加一行 LoadModule python_module modules/mod_python.so 这个必须手动添加。 5: 我们列出此时Apache所需要的参数分别为: 项目名:myporject 试图访问的URL为:http://localhost:80/mysite/ 静态资源文件的存放目录:c:/django/myproject/media 项目文件夹路径:c:/django/myproject 好了,此时你就应该在httpd.conf文件的最后附加这段配置,以便让Apache知道到哪里去定位myproject/settings.py文件: 增加的配置行 # 但是对于PythonPath,必须设置成这个目录的上一级目录! # this site url:http://localhost:80/mysite/ <Location "/mysite/"> SetHandler python-program PythonPath "sys.path+['c:/django']" PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE myproject.settings PythonInterpreter mysite PythonDebug On </Location> 对于上面的配置,Limodou注释道:“上面 PythonPath 主要是将 myproject的目录加入到 sys.path ,以便 Django 可以找到。需要使用绝对路径。 SetEvn 中设置的 DJANGO_SETTINGS_MODULE 就对应于你的 项目名.配置文件。因此为了能导入 项目名.配置文件,就需要前面的 PythonPath 的设置。 PythonDebug 和 PythonAutoReload 建议在生产时设为 Off 。” 为了让图片、css、script能够被Apache成功加载,还需要在httpd.conf最后附加这段配置: 增加的配置行 Alias /site_media c:/django/myproject/media <Location "/site_media/"> SetHandler None </Location> #Alias /media 是将 Django Admin 的静态文件设置一个 URL 的访问别名。 Alias /media c:/Django-0.95/django/contrib/admin/media <Location "/media/"> SetHandler None </Location> # file types we want to serve statically # case insensative match <LocationMatch "(?i)\.(jpg|gif|png|txt|ico|pdf|css|jpeg)$"> SetHandler None </LocationMatch> Limodou在Step by step中特地说“同时可以注意到 settings 我改为了 settings_apache 了。一方面将要把其中的内容有关相对路径的东西改为绝对路径,另一方面我还想保持现在的 settings.py 。”这也是一个很好的做法。 最后,修改MaxRequestsPerChild为1,这是一个可选项。Limodou是这么说的“同时如果你不想每次重启Apache 来进行测试,可以将: MaxRequestsPerChild 0. 改为: MaxRequestsPerChild 1” 重启Apache服务。 6: 浏览 http://localhost:80/mysite/ 即可。
在E:\mysite\testsite下新建hellodjango.py(=之间为文件内容):
============================================
return HttpResponse("Hello, Django.")
============================================
===========================================================
from django.conf.urls.defaults import *
# Example:
# (r'^testsite/', include('testsite.foo.urls')),
(r'^$', 'testsite.hellodjango.index'),
# Uncomment this for admin:
# (r'^admin/', include('django.contrib.admin.urls')),
)
启动Apache,访问http://localhost
Django学习文档
http://www.woodpecker.org.cn/obp/django/django-stepbystep/newtest/doc/
http://www.djangoproject.com/docu****tion
4.数据库安装
4.1 PostgreSQL
PostgreSQL: http://www.postgresql.org/
psycopg: http://initd.org/tracker/psycopg
4.2 MySQL
MySQL: http://www.mysql.com/
MySQLdb: http://sourceforge.net/projects/mysql-python
4.3 SQLite
SQLite: http://www.sqlite.org/
pysqlite: http://initd.org/tracker/pysqlite
关键词: client denied by server configuration。
[Mon Nov 20 17:27:08 2006] [notice] Child 4172: Starting thread to listen on port 80.
# 对需要访问的区域,可以增加正确的Directory块
关键词: EnvironmentError: Could not import settings。
1. Mod_python error: “PythonHandler django.core.handlers.modpython”
result = object(req)
return ModPythonHandler()(req)
if settings.ENABLE_PSYCO:
self._import_settings()
self._target = Settings(settings_module)
raise EnvironmentError, “Could not import settings ‘%s’ (Is it on sys.path? Does it have syntax errors?): %s” % (self.SETTINGS_MODULE, e)
# mysite目录路径: c:/django/myproject,
如何在Windows环境下安装Apache和mod_Python, 这篇Blog解释得很明白,我下面的这些步骤得到了验证。
从 http://httpd.apache.org/
来获取apache_2.2.3-win32-x86-no_ssl.msi这个安装文件;
运行这个msi即可顺利安装Apache。
2:
# Django settings for myproject project.
# mysite目录路径: c:/django/myproject,
#Alias /site_media 是用来将 myproject的静态文件设置一个 URL 访问的别名。
相关推荐
转载本文章请标明作者和出处 本文出自《Darwin的程序空间》 能阻止你成功的人,只有你自己 vlog 时间:2020年02月28日-2020年03月01日 ——————两个白天,一个通宵 学习方式:视频(黑马),博客,百度 完成...
可以任意转载,但转载时必须标明原作者charlee、原始链接http://tech.idv2.com/2008/11/03/python-memo/以及本声明。 基本概念 Python居然支持复数。如(-5+4j)。但要注意虚数单位单独使用时要写成 1j,不能写成 j。...
更多Pythton学习系列内容请点击我 本文基于Python3.7 1. 相关 ...本文最先由Baldwin_Keepmind发表于CSDN,转载请注明出处。作者博客地址:https://blog.csdn.net/shouchenchuan5253 2.Python异常 Pyth
Python全面教程 本人自学Python的手写笔记,Markdown版本,可以自己转PDF 此文档从安装Python软件到学习面向对象 ©此文档是本人精心制作的,未经允许不许转载!
python学习资料(转载)python学习笔记 1. Model 类, 实体类 ,实体类中的字段与数据库中的表字段一一对应,用来包装信息实体的基础类,并且可以验证这条数据的完整性 2. ModelManager 类:是实体类的管理类,通常...
.zip,技术博客笔记大汇总【15年10月到至今】,包括Java基础及深入知识点,Android技术博客,Python,Go学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,...
博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……...
学习笔记,主要层次B站上视频的学习,同时会记录平时一些学习和项目中遇到的问题,如果对我的博客网站认知的话,欢迎关注我的博客项目如果笔记对您有帮助的话,欢迎星支持,谢谢〜 笔记主要涵盖:Java,JVM,JUC,...
博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……...
使用python编写,欢迎大家提意见,如果下载的人多,后续会上传源代码提供大家学习。 目前没有美化,软件可能看上去比较丑,后续有机会进行一下美化,如果有人愿意一起美化,不胜感激。 个人能力有限,如果存在bug...
另仓库中的全部知识点均来自本人学习的总结,读书笔记,经典书籍,网络博文等,阿秀已经尽自己最大的能力发现当时搜集面试题时的出处并注明了。如有遗漏与价值,请问题提出,感激不尽。转载请注明出处,不得用于商业...
深度学习,神经网络图谱,笔记等。 这里面的脚本在jupyter notebook中执行可以,目前自定义配置的sublime中的Python执行会抛出弃用警告 DeprecationWarning: the imp module is deprecated in favour of importlib; ...
本项目参考《机器学习实战》,是作者在学习过程中的笔记、总结。 基于书中代码案例的基础上,加以划分逻辑,添加注释。目的使算法思路更加清晰,提高代码可读性,方便更多初学者学习。 一. 监督学习 二. 利用回归...
笔记 目前,该软件包仅适用于类 Unix 环境和 MacOS。 由于库的限制,不支持 MS Windows 操作系统。 我们正在为 MS Windows 开发的端口,但可能需要一段时间。 同时,您可以使用我们的映像,可在下载。 安装 此包的...
商业转载请联系作者获得授权,非商业转载请注明出处。 我是一名C/C++老师,经常和同学们打交道,发现大家遇到的困难大部分类似,大致分为以下几类:1、刚接触C/C++,不知道该从哪里学起,也不知道该学点啥;2、书本太...