栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

django部署到Apache踩过的坑

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

django部署到Apache踩过的坑

django部署到Apache踩过的坑
  • 1.找不到mod_wsgi.so
  • 2.配置文件httpd.conf 修改好后,访问不到django项目
  • 3.django安装完成后,访问不到一些项目文件

1.找不到mod_wsgi.so

部分教程只是说需要在Apache 的配置文件httpd.conf 中写 LoadModule wsgi_module modules/mod_wsgi.so
实际上这个modules/mod_wsgi.so 需要我们自己安装,并做相应修改

安装方法参考:这是其他大佬写的
以上方法如果安装不成功,就使用以下链接下载压缩文件,解压后使用setup.py文件安装
https://files.pythonhosted.org/packages/b6/54/4359de02da3581ea4a17340d87fd2c5a47adc4c8e626f9809e2697b2d33f/mod_wsgi-4.9.0.tar.gz

2.配置文件httpd.conf 修改好后,访问不到django项目

这是我犯傻了,将配置内容写到了其他封闭标签中,注意不要将内容写道其他配置项的子内容中啊!!

3.django安装完成后,访问不到一些项目文件

这里的问题不是访问不到静态资源。访问不到静态资源如css,js,html模板文件的问题前期摸索django 开发模式和生产模式的区别的时候已经解决了。就是需要配置STATIC_ROOT
我的views.py 中的视图中使用了一些文件,这些文件写的是相对路径,将这些路径修改为绝对路径就可以了

	app_dir = os.path.dirname(__file__)
    # line_path = 'mycharts/render/tabledata/charts_%s.html' % table_name.split('.')[1]
    # 部署到apache服务器后需要使用绝对路径
    line_path = os.path.join(app_dir,'render/tabledata/charts_%s.html' % table_name.split('.')[1])

同时菜鸟的我也了解到,sys.path 是用来搜索模块的,而不能用来搜索文件,所以不要使用sys.path.append(app_dir)的方式来增加文件搜索路径

先到这里吧

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/468159.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号