Centos 配置django到apache

1.Centos安装Python3
1)首先下载python3的安装包 https://www.python.org/downloads/
2)需要安装依赖:
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
3)将安装包解压,进入解压后的目录
./configure --prefix=/usr/local/python3 --enable-shared
这里的prefix参数是安装的位置,--enable-shared是为了使apache可以运行django
4)make
5)make install
6)这样安装完成后,输入python还是2.x的版本,需要配置一个软链接,which python查看你的python命令的目录在哪(不同的用户命令的目录是不一样的,这里已root为例)然后
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
第一个参数是要执行的文件在哪 第二个参数是绑定在哪个目录上
这里切记不要将原来指向python2.x的python文件覆盖掉,因为有些文件会用到2.x的python比如yum
2..Centos安装apache
首先下载Apache源码压缩包,地址为http://mirror.bit.edu.cn/apache/httpd/
继续下载apr和apr-util压缩包,地址为http://mirror.bit.edu.cn/apache/apr/
下载pcre压缩包,地址为http://ftp.exim.llorien.org/pcre/
1)安装arp 与上面大同小异 都是进入解压后的目录执行命令
  • ./configure --prefix=/usr/local/apr 
  • make 
  • sudo make install 
2)安装apr-util
  • ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config  
  • make   
  • sudo make install
3)安装pcre
  • ./configure --prefix=/usr/local/pcre  
  • make  
  • sudo make install  
这里安装pcre的时候可能会遇到缺少C++ 编译器的问题
yum install gcc-c++ 安上就可以了
4)安装apache
  • ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/  
  • make  
  • sudo make install  
5)进入apache安装包的bin目录下 apachectl  start 启动服务器
这时候可能会启动不成功,需要将conf/httpd.conf配置文件里面加一个配置
ServerName http://loaclhost:80 然后输入你服务器的ip 如果出现it works 就ojbk了

3.
django配置到apache(mod_wsgi)
这里不建议去看网上各种各样的博客,不如参照着官方文档来https://docs.djangoproject.com/en/1.11/howto/deployment/wsgi/modwsgi/
1)创建虚拟环境
pip install virtualenv
/usr/local/python3/bin/virtualenv -p /usr/local/python3/bin/python3 python3_venv
虚拟环境会创建到当前的目录
2)安装wsgi
与上面大同小异 解压 、make 、make install
如果最后出了一个给mod_wsgi.so赋权限的日志,就成功了
最后在你的conf/httpd.conf 加上一个这样的配置:
LoadModule wsgi_module modules/mod_wsgi.so
3)安装django
直接在你的虚拟环境里 pip install django就可以了
4)在conf/httpd.conf 里加上下面的配置
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py(django项目里wsgi文件的位置)WSGIPythonHome /path/to/venv(虚拟环境的位置)WSGIPythonPath /path/to/mysite.com(django项目的根目录)<Directory /path/to/mysite.com/mysite>(django项目里与项目相同名字的文件夹)<Files wsgi.py>Require all granted</Files></Directory>

5)在项目的wsgi文件里加上如下的配置:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "{{ project_name }}.settings")
6)最后在你的项目的settings文件里:
加上ALLOWED_HOSTS = ['*'] 或者加上你自己的服务器ip
7)./apachectl restart 重启你的服务器 看能不能访问你配置的url

我这里只使用了官方文档的一部分配置,后面还有守护进程和文件的配置,大家有兴趣可以自己研究一下


欢迎各位大神指正

阅读更多
个人分类: django
上一篇CrawlSpider爬取拉勾网,解决302问题。
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭