`
brucewei777
  • 浏览: 85422 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Django项目部署在Apache遇到的问题及解决思路

阅读更多
   最近学习Django框架,照着资料作了一个小web程序。做完了就该部署,怎么说都应该把流程走一遍。我选择在windowsXp+Apache的环境,也是按照网上的资料,我的python是2.5的,Apache是2.2的,所以下载mod_python-3.3.1.win32-py2.5-Apache2.2.exe。安装一定要正确,我开始用wamp提供的apache套件,结果mod_python就装不上。我也没有心情去磨这个问题了,就干脆下了个纯的Apache安装包。才把mod_python+apache环境搞定。接下来就是放python写的web程序。

   网上很多资料都用了一个mptest.py来开场,我觉得挺好,由简入繁,我一开始就把我的程序放上去,结果出的问题都不知道找谁去。一步步来,一点点成功会支持你继续下去。

   用mptest.py的时候,在httpd.conf中要加个Directory的节点,内部的配置是这样的。
        AddHandler mod_python .py
        PythonHandler mptest
        PythonDebug On

这里面 AddHandler mod_python .py表示后缀为py的文件都用mod_python来处理。
PythonHandler mptest中的mptest就是指mptest.py。
我的项目文件夹叫mysite,放在D:/wamp/apps下面。
部署Django项目的时候,用下面的配置
LoadModule python_module modules/mod_python.so
DocumentRoot "D:/wamp/apps"
<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Allow from all
</Directory>

<Location "/mysite/">
        SetEnv DJANGO_SETTINGS_MODULE settings
        SetHandler mod_python
        AddHandler mod_python .py
        PythonHandler django.core.handlers.modpython
        PythonOption django.root /mysite
        PythonDebug On
        PythonPath "['C:/Python25','D:/wamp/apps/', 'D:/wamp/apps/mysite', '/django','C:/Python25/Lib/site-packages'] + sys.path"
</Location>

如果不顺利,通常会出现的问题如下。

请求的URL不存在;或者只是把目录结构罗列下来,就像文档服务器一样,点击*.py文件就把内容展现了;或者请求的资源总是Forbidden;或者出现调试项目时出现的黄页;还有500这个错误。

很难说哪种错误对应哪种解决方法,基本上都是配置文件惹的祸,而且大部分是路径配置错误,注意看apache的error.log,注意看页面提示。有几个地方要注意。

Location而不是Directory,我改成了Directory就不工作了。


下面附带django开发所需组件,仅windows上使用,所需的python25、Django-1.2.3
和mysql请自己下吧。

0
0
分享到:
评论

相关推荐

    Windows 7中将Django部署到Apache Web Server.docx

    通过以上步骤,即可完成Django项目在Apache Web Server上的部署。需要注意的是,实际部署过程中可能会遇到各种各样的问题,比如权限问题、环境变量配置错误等,需仔细排查。 #### 结语 将Django部署到Apache是一项...

    python毕业设计之在线水果销售系统源码.zip

    "说明文档"则可能提供了项目背景、功能介绍、使用方法以及可能遇到的问题和解决方案。这对于理解项目的设计思路、学习代码逻辑以及解决实际问题都非常有帮助。 总的来说,这个Python毕业设计项目是一个全面学习和...

    北大青鸟S2 easyBuy 答辩项目

    9. **答辩准备**:最后,答辩环节需要学员清晰地阐述项目目标、设计思路、实施过程及遇到的问题和解决方案,锻炼了他们的沟通和演示技巧。 这个项目为学员提供了实战经验,让他们在实践中学习并掌握了IT行业的基础...

    基于python的基于人脸识别的景区票务系统.zip

    2. **毕业论文**:这可能意味着项目不仅包含代码实现,还有一份详细的研究报告,阐述系统的原理、设计思路、实现过程以及可能遇到的问题和解决方案。 3. **Python**:项目使用Python作为主要编程语言,Python以其易...

    网络课程设计-信息广场网站及报告

    11. **报告编写**:项目完成后,需要撰写报告,详细阐述设计思路、实现方法、遇到的问题及解决方案,这有助于提高分析和表达能力,也是评估项目成果的重要依据。 通过这个网络课程设计,学生不仅能够深化理论知识,...

    毕业设计 Python源代码+开发文档说明 51商城的程序

    10. **部署与运维**:如何将项目部署到服务器,如使用Apache或Nginx,并进行性能优化。 这个项目提供了从零开始构建电商平台的全面示例,是学习Python Web开发和电商系统设计的宝贵资料。通过阅读源代码和开发文档...

    计算机软件毕业设计_的小区物业管理之业主服务子系统的设计与实现(源代码+论文+任务书+开题报告+文献综述).rar

    7. **文档编写**:源代码、论文、任务书、开题报告和文献综述都是项目的重要组成部分,它们详细记录了设计思路、实现方法、遇到的问题及解决方案,对于理解和评估项目质量至关重要。 8. **持续改进**:项目完成后,...

    MongoDB document

    这部分内容可能会涉及如何在Django项目中集成MongoDB,利用MongoDB的灵活性来存储复杂的数据结构,并探讨如何有效地管理和查询这些数据。 6. **国际文档**(International Documentation):随着MongoDB在全球范围...

Global site tag (gtag.js) - Google Analytics