mac配置Django 1.7.1上+ mod_wsgi 4

  

今天准备想把django配置到apache服务器上,那个糟心. .看了几个博客要么就是草草一笔,要么就是不带版本号,搞得晕头转向最后我还是自己看官方文档弄明白了,这里写一个稍微详细一点的总结,适合不太懂的小白,因为我就是.....——!

再次声明我现在的版本:

 Django  1.7.1  + mod_wsgi  4.4.7(非守护进程),+ apache/2.2.26
  mac 我没升级,Yosomite 新系统,所以版本号是,10.9.5 

apache不用我帮你安装了吧,貌似mac已经原装了(如果说错了别拍我…此步骤跳过,后期会讲到配置apache)

mac,第一件事就是去装xcode,装xcode干嘛呢是为了安装一个叫命令行工具的工具,

在哪? xcode——》偏好→下载,你看到没有?,

啥?没看到?那你在命令行里面输入,

 xcode-select ——安装

会自动弹出来个方框让你安装刚才我说的那个工具,好了吧,等他安装完!


第二步:安装家酿

我写文章这个时间已经不像是之前几个博客里面的安装方法,

 ruby  -e “美元(curl  -fsSL  https://raw.githubusercontent.com/Homebrew/install/master/install)" 

用这个,直接下载安装

第三部:安装mod_wsgi,这回就用到刚才安装的啤酒了,

 brew  install 自制程序/apache/mod_wsgi 

可见为了仅仅安装一个mod_wsgi绕了多大一个弯,嘿嘿不用去追究他的原理,只要咱们安装成功了,供咱们使用完成自己的任务就可以了,简单来说这玩意就是用来在配置完了apache之后可以使用python写的第三方web应用程序成功运行在apache的一个中间件,所以说可以当做是一个应用程序和apache的一个桥梁,后期配置文件路径啥的都靠他了。


第四步:

现在该有的都有了,该去配置文件了


,输入中的httpd。相依,这个是apache的很重要的一个配置文件,我的路径在

/etc/输入/httpd。参看

怎么去?我就不告诉你是打开仪然后命令+ Shift + G

该写点啥呢,你说现在咱们桥梁也有了两边的django和Apache也有了剩下的就是把桥放在两者之间,没错,搭桥!


一方面搭刚才安装的,mod_wsgi一方面搭我们的django

先来mod_wsgi,打开上面那个httpd . conf文件,在最后面,加上怎么一行先

 LoadModule  wsgi_module /usr/地方/地窖/mod_wsgi 4.4.7/libexec/mod_wsgi。

哦!可以理解成为这个让Apache把刚才下载的mod_wsgi文件加载进来吧,没错!

至于说为什么是

/usr/当地

这个路径呢?你安装的适合人家就放在那了你能怎么的吧,引过来就好了!

然后! !再加入一行

 WSGIPythonPath /图书馆/网络服务器/文件/my2site 

可以看出来后面的

/图书馆/网络服务器/文件/my2site 

这个就是你用startproject时候创建的根目录了,也就是整个站点的根目录了找出来直接贴在后面,这个的用处可以理解为可以让Apache找到你的django的根目录,怎么样,桥搭上了吧?对!

但是还缺少东西,一个最关键的文件,wsgi。py,创建django工程项目的时候已经自动创建了这个文件,我们只需要像上面那样给他引进来,例如我的是

 WSGIScriptAlias /,/图书馆/网络服务器/文件/my2site/my2site/wsgi。py 

这里发现最中间有个/,这个是干嘛的。,他是你的的根目录!也就是说的首页地址,像是这样的话我的主业就是127.0.0.1如果我把这个/换成/app那我的首页是什么? ?,你答对了. .


紧接着要写这样一句话

 & lt; Directory /图书馆/网络服务器/文件/my2site/my2site/比;
  & lt; Files  wsgi.py>
  Allow 得到
  Order 否认,允许
  & lt;/Files>
  & lt;/Directory> 

他的作用就是让Apache可以读取你刚才引入的wsgi。py,所以他俩是成双成对哒!

,注意:因为的的apache的版本是2.2.26,是小于2.4版本的,所以我用了这两行

 Allow 得到
  Order 否认,允许

如果你是高于2.4版本的Apache,你要把这两行替换成一行

 Require  all 授予

<强> OK !

<强>

<强>这样就算把桥搭好了,

<强>去看看首页应该会显示了,,但是你会发现我们很多的静态文件已经显示不出来了,这是因为django已经不负责关联你的静态文件路径了,需要Apache来配置,怎么配置?联想到刚才咱们都引入了wsgi。py文件的经验我们一样的引入静态的根目录,

<强>

mac配置Django 1.7.1上+ mod_wsgi 4