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 on
Note: 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 start
Redirecting to /bin/systemctl start httpd.service
访问ip验证一下,成功!

二、配置
httpd默认的配置文件目录为
[root@yl-web httpd]# cd /etc/httpd/
[root@yl-web httpd]# ls
conf 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:80
Listen 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 off
EnableSendfile 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 os
import sys
import django.core.handlers.wsgi
from django.conf import settings # Add this file path to sys.path in order to import settings
sys.path.insert(0, os.path.join(os.path.dirname(os.path.realpath(__file__)), '..')) os.environ['DJANGO_SETTINGS_MODULE'] = 'lxyproject.settings' sys.stdout = sys.stderr DEBUG = True application = 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.wsgi
Alias /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.log
LogLevel 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有问题欢迎与我讨论,共同进步。
centos7 apache httpd安装和配置django项目的更多相关文章
- Apache系列:Centos7.2下安装与配置apache
Centos7.2下安装与配置apache(一) 配置机:腾讯云服务器,centos7.2 一.安装Apache服务(Apache软件安装包叫httpd) yum install httpd -y 二 ...
- Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基础文件配置,Web框架的本质,服务器程序和应用程序(wsgiref服务端模块,jinja2模板渲染模块)的使用
Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基 ...
- Apache+php安装和配置 windows
Apache+php安装和配置 windows Apache 安装 1.官网网址:http://httpd.apache.org/ 2.Download 3.点击链接Files for Microso ...
- (转)Apache的安装与配置
转自:http://www.dreamdu.com/webbuild/apache/ 5.2. Apache的安装与配置 5.2.1. Apache安装与配置视频教程 下面将介绍如何在WinXP下安装 ...
- Apache的安装与配置
apahe官网 http://www.apache.org/ 安装及配置https://blog.csdn.net/liyang4534/article/details/78036591 常见问题的处 ...
- CentOS7 Apache的安装配置
前些天安装了Nginx,为了好玩我就又安装Apache,Apache的安装还算顺利.在此做一下学习记录和经验分享. 一.安装httpd 1.先查看一下系统有没有已经安装了httpd的,如果啥都没查到, ...
- 【Django】Apache上运行多个Django项目
运行单个项目的步骤参考:这里 1 安装环境 操作系统:Ubuntu 12.04 LTS 32 位(安装在VMware虚拟机中) python 版本: Python 2.7.3 Django版本 > ...
- httpd安装与配置(编译安装)
httpd简介 httpd是Apache超文本传输协议(HTTP)服务器的主程序.被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池. 通常,httpd不应该被直接调用,而应该在类 ...
- Centos7 PHP的安装和配置
前面Nginx和httpd的安装都是为了支持PHP而弄的,然后这个目标就给了我一沉重的打击,等我慢慢道来,先来说说PHP的安装和配置吧. 一.PHP的安装 1.由于linux的yum源不存在php7. ...
随机推荐
- idea报错:error java compilation failed internal java compiler error
idea下面报如下问题 error java compilation failed internal java compiler error 解决办法:Setting->Compiler-> ...
- python __getitem__, __setitem__ 实现属性的索引式存取
class MyDictionary(object): """docstring for MyDictionary""" kv = {} d ...
- XML技术之SAX解析器
1.解析XML文件有三种解析方法:DOM SAX DOM4J. 2.首先SAX解析技术只能读取XML文档中的数据信息,不能对其文档中的数据进行添加,删除,修改操作:这就是SAX解析技术的一个缺陷. 3 ...
- php json_encode数据格式化
在用ajax与后台交互数据的时候,后台传回来的数据格式不正确,后参考@傲雪星枫的博客在PHP文件添加了一段代码 :echo json_encode($arr); 成功解决.
- 野路子出身PowerShell 文件操作实用功能
本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...
- Node基础篇(文件操作)
文件操作 相关模块 Node内核提供了很多与文件操作相关的模块,每个模块都提供了一些最基本的操作API,在NPM中也有社区提供的功能包 fs: 基础的文件操作 API path: 提供和路径相关的操作 ...
- 给 DevOps 初学者的入门指南
当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念.那么,到底什么是"DevOps"呢? 什么是DevOps 随着软件发布迭代 ...
- JAVA多态
多态是指当系统A访问系统B的服务时,系统B可以通过多种方式来提供服务,而这一切对系统A是透明的.比如动物园的饲养员能够给各种各样的动物喂食.下图显示了饲养员Feeder,食物Food和动物Animal ...
- Nginx反向代理部署指南
一.反向代理 我们都知道,80端口是web服务的默认端口,其他主机访问web服务器也是默认和80端口进行web交互,而一台服务器也只有一个80端口,这是约定俗成的标准. 我们来看下面两个场景: 1.服 ...
- 数据结构:队列 链表,顺序表和循环顺序表实现(python版)
链表实现队列: 尾部 添加数据,效率为0(1) 头部 元素的删除和查看,效率也为0(1) 顺序表实现队列: 头部 添加数据,效率为0(n) 尾部 元素的删除和查看,效率也为0(1) 循环顺序表实现队列 ...