在centos7中发布django项目
来源:互联网 发布:大数据行业什么意思 编辑:程序博客网 时间:2024/05/16 14:34
centos7 apache httpd安装和配置django项目
一、安装httpd服务
apache在centos7中是Apache HTTP server。如下对httpd的解释就是Apache HTTP Server。所以想安装apache其实是要安装httpd。
httpd.x86_64 : Apache HTTP Server
安装:
# yum install httpd
设置httpd服务开机启动
[root@yl-web httpd]# /sbin/chkconfig httpd onNote: Forwarding request to 'systemctl enable httpd.service'.ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
启动httpd服务
[root@yl-web httpd]# /sbin/service httpd startRedirecting to /bin/systemctl start httpd.service
访问ip验证一下,成功!
二、配置
httpd默认的配置文件目录为
[root@yl-web httpd]# cd /etc/httpd/[root@yl-web httpd]# lsconf conf.d conf.modules.d logs modules run
主配置文件是/etc/httpd/conf/httpd.conf。
配置存储在的/etc/httpd/conf.d/目录。
1、主配置文件
看一下主配置文件httpd.conf里有用的配置项
#服务器根目录
ServerRoot "/etc/httpd"#端口
#Listen 12.34.56.78:80Listen 80#域名+端口来标识服务器,没有域名用ip也可以
#ServerName www.example.com:80#不许访问根目录
<Directory /> AllowOverride none Require all denied</Directory># 文档目录
DocumentRoot "/var/www/html"# 对 /var/www目录访问限制
<Directory "/var/www"> AllowOverride None # Allow open access: Require all granted</Directory># 对/var/www/html目录访问限制<Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride None Require all granted</Directory># 默认编码
AddDefaultCharset UTF-8#EnableMMAP offEnableSendfile on
# include进来其它配置文件
IncludeOptional conf.d/*.conf
2、下载配置mod_wsgi
安装mod_wsgi前先进行apache的apxs扩展
http-devel 是为了apxs,yum后你可以whereis apxs去寻找他,然后后边编译使用。
# yum install -y httpd-devel
下载
[root@yl-web collectedstatic]# yum install mod_wsgi
在httpd.conf中增加下面配置:
LoadModule wsgi_module modules/mod_wsgi.so
该配置用来连接django.wsgi,使工程被apache加载。
配置django wsgi
在项目目录下新建wsgi,里面新建django.wsgi,内容如下
import osimport sysimport django.core.handlers.wsgifrom django.conf import settings# Add this file path to sys.path in order to import settingssys.path.insert(0, os.path.join(os.path.dirname(os.path.realpath(__file__)), '..'))os.environ['DJANGO_SETTINGS_MODULE'] = 'lxyproject.settings'sys.stdout = sys.stderrDEBUG = Trueapplication = django.core.handlers.wsgi.WSGIHandler()
配置wsgi时,
- 必须配置项目路径到系统路径中,因为要通过项目路径找到settings.py配置文件。也就是sys.path.insert(0, os.path.join(os.path.dirname(os.path.realpath(__file__)), '..'))。
- DJANGO_SETTINGS_MODULE必须指向项目的settings.py文件。
修改了wsgi的配置后必须重启httpd服务。
3、配置django项目虚拟主机
在/etc/httpd/conf.d中添加配置文件lxyproject.conf,内容如下
<VirtualHost *:80>WSGIScriptAlias / /srv/lxyproject/wsgi/django.wsgiAlias /static/ /srv/lxyproject/collectedstatic/ServerName 10.1.101.31#ServerName example.com#ServerAlias www.example.com<Directory /srv/lxyproject/collectedstatic> Options Indexes FollowSymLinks AllowOverride None Require all granted</Directory><Directory /srv/lxyproject/wsgi/> Require all granted</Directory>ErrorLog /etc/httpd/logs/lxyproject.error.logLogLevel warn</VirtualHost>
其中
WSGIScriptAlias 直接告诉apache,这个虚拟主机中,请求/就交给WSGI处理,也就是项目中配置的django.wsgi会指明。
Alias 说明访问/static/直接从DocumentRoot中获取,而无需经过WSGI处理。
现在就可以通过apache服务器配置的IP访问django项目了。
三、资源链接
How to use django with mod_wsgi
本文作者starof,因知识本身在变化,作者也在不断学习成长,文章内容也不定时更新,为避免误导读者,方便追根溯源,请诸位转载注明出处:http://www.cnblogs.com/starof/p/4685132.html有问题欢迎与我讨论,共同进步。
0 0
- 在centos7中发布django项目
- 在Centos7下发布.NET CORE项目
- django项目的发布
- 在eclipse中发布项目
- 在Eclipse中发布项目
- 在Eclipse中发布项目
- Centos7服务器搭建django项目
- [入门级]在Ubuntu上用Apache发布Django项目
- centos7中发布项目并安装mysql数据库
- 在PyCharm中运行django 项目
- 在Pycharm中调试Django项目程序
- 在Ubuntu中django创建项目
- 在Eclipse中创建Django项目
- Java项目Centos7发布之发布过程
- 如何在weblogic服务器中发布项目
- 在eclipse中发布项目的方法
- 在项目中使用AXIS2发布WebService
- 关于在Eclipse中发布Web项目
- JavaScript闭包
- HTML5学习笔记9-编辑API之Range对象(二)
- JS作用域
- Centos 安装Java配置环境变量
- How to Change Default Web ADI Upload Parameters for FlexField Import / Validation
- 在centos7中发布django项目
- 树莓派+Android Things
- 二叉树水平遍历
- MangoDB在java中的实现
- CCNA考试复习总结
- JavaScript函数作用域
- FragmentPagerAdapter与FragmentStatePagerAdapter区别
- win sc 命令使用记录
- 本人在使用PopupMenu,遇到的问题,和解决过程