Required:

  • httpd: 2.4.18
  • django : 1.8.7
  • mysql: 5.7.10
  • MySQL-python: 1.2.3
  • mod_wsgi: 4.4.21

Offical Docs:

  • http://httpd.apache.org/docs/2.4/
  • https://docs.djangoproject.com/en/1.8/
  • http://dev.mysql.com/doc/refman/5.7/en/
  • https://pypi.python.org/pypi/mod_wsgi

1. Httpd 安装

    Required:   apr, apr-util and pcre

    注意:apache 程序的安装不会有success这样的信息。

             显示**make leaving directory字样不是错误,是正常的。

    a) 下载安装包

    b) 解压安装包, 准备 apr 和 apr-util

        将 apr 和 apr-util 解压后的文件夹 重命名为 apr 和 apr-util, 并把它们放到 httpd 的 srclib 文件夹下。

    c) 安装pcre

        解压,切换到该目录

./configure

make

sudo make install

    c) 安装 httpd

          ./configure --with-included-apr --with-included-apr-util

          make

sudo make install

# start
sudo ./apachectl -f /usr/local/apache2/conf/httpd.conf
# restart
sudo ./apachectl -k graceful
# stop
apachectl -k stop

2. Mysql 安装

我在官网上下载的是deb文件压缩包,解压出来的是一串deb文件:

sudo dpkg -i mysql-{common,community-client,client,community-server,server}_*.deb

    如果下载的是其他的文件,请在官网上找对应的连接去安装。

还需要做些配置参见:http://dev.mysql.com/doc/refman/5.7/en/postinstallation.html

主要是这个:http://dev.mysql.com/doc/refman/5.7/en/data-directory-initialization.html

# start(choose one)
/etc/init.d/mysql start
mysqld_safe --user=mysql &
systemctl start mysqld # stop
/etc/init.d/mysql stop # start mysql command line window
mysql -u root mysql -p
mysql> SELECT * FROM user;

3. MySQL-python, Django 安装

     解压, python setup.py install

如果 python -c "import django; print(django.get_version())" 可以正常返回版本号,就成功了。

使用:  

# 创建project
django-admin.py startproject devicemonitor
# 创建app
cd project目录
python manage.py startapp device # 持久化数据库
python manage.py makemigrations
python manage.py migrate # 导出数据
python manage.py dumpdata app名 > myapp.json
# 导入数据
python manage.py loaddata myapp.json # create user as Admin
python manage.py createsuperuser # 可以检验是否有语法错误
vim settings.py
python manage.py validate

4. mod_wsgi 安装

     这个是 apache 内置的python 解释器。安装方法,.configure, make, sudo make install

需要把mod_wsgi.so 放在/usr/local/apache2/modules/ 下。

     

配置:

  1. /usr/local/apache2/conf/httpd.conf

a) 配置 DocumentRoot, 这是web的入口。 紧跟着的<Directory>也要配置,这是必须的。

如果是静态,类似于ftp性质的,那么这样就足够了,可以浏览文件,下载文件。

b) wsgi 配置

LoadModule wsgi_module modules/mod_wsgi.so

c) 网站配置例子。包括static文件路径和wsgi的配置。

WSGIPythonPath project路径
<VirtualHost *:80>
ServerName 域名或IP
ServerAlias 域名或IP
ServerAdmin 邮箱地址 Alias /static/ 静态文件路径
<Directory "/static/">
Require all granted
</Directory> WSGIScriptAlias / project路径/project名/wsgi.py
<Directory "project路径/project名">
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>

 

Apatche httpd + Django + Mysql web server 搭建的更多相关文章

  1. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  2. MySQL BinLog Server 搭建实战

    一.MySQL Binlog server 介绍 MySQL Binlog Server: 它使用 mysqlbinlog 命令以 daemon 进程的方式模拟一个 slave 的 IO 线程与主库连 ...

  3. Django开发web环境搭建的简单方法(CentOS6.5环境)

    这几天跟Linux下的Python + Django环境搭建卯上了.经过几天的琢磨,找到了一条自己认为给力的路径. 这里给出命令行,过程如下: 首次登陆,切换管理员: [web@bogon ~]$ s ...

  4. 全面解读Python Web开发框架Django,利用Django构建web应用及其部署

    全面解读Python Web开发框架Django Django是一个开源的Web应用框架,由Python写成.采用MVC的软件设计模式,主要目标是使得开发复杂的.数据库驱动的网站变得简单.Django ...

  5. 利用Django构建web应用及其部署

    注:很久之前就有了学习Django的想法,最近终于有机会做了一次尝试.由于Django的详细教程很多,我在这里就不再详述了,只是将整个开发流程以及自己在学习Django中的一些思考记录在此. Syst ...

  6. Django+Nginx+MongoDB+Mysql+uWsgi的搭建

    搭建目标如下: 图:系统架构图 这个系统可以提供web服务及其它查询应用服务,我用其做一个二手房信息搜集.处理及分发的系统,可以通过浏览器访问,也可以通过定制的客户端进行访问. 一.安装篇 1.下载安 ...

  7. Django部署到Apache Web Server

    Windows环境下,将Django部署到Apache Web Server 在Windows上部署Django(用mod_wsgi)会出现各种奇怪的问题,现简单记录下配置过程及遇到的错误及解决方法. ...

  8. 搭建一个Web Server站点

    题:搭建一个Web Server站点.安装web服务,并在本地创建index.html测试 1.安装http服务 yum -y install httpd 2.进入网站目录 cd /var/www/h ...

  9. pycharm+python+Django之web开发环境的搭建(windows)

    转载:https://blog.csdn.net/yjx2323999451/article/details/53200243/ pycharm+python+Django之web开发环境的搭建(wi ...

随机推荐

  1. ASP.NET MVC4+EF5(Lambda/Linq)读取数据

    希望大家记住,这里讲的所有的知识点,不仅仅是了解了就可以了,还要会灵活用,一定要多思考,撑握其中的编程思想. 本文讲的是委托和事件,这两个词可能你早就耳熟能详,但你是否真正撑握了呢? 本系列讲的C#高 ...

  2. Valid Palindrome(LintCode)

    Valid Palindrome Given a string, determine if it is a palindrome, considering only alphanumeric char ...

  3. Poj3580 Super Memo(FHQ-Treap)

    题面 题解 对于操作$1$,我们可以对于每个节点打一个$add$标记,下放就行了 对于操作2,可以参考这篇题解的上一篇,不赘述 对于操作4,可以将区间裂成两部分,然后再插入合并 对于操作5,可以将区间 ...

  4. 10 个常用的 es6 特性

    1. const  and let 除了函数作用域之外,增加了块级作用域和常量.const 定义的绑定不可以修改,let定义的绑定在{ }不能访问.之前的 var 如果不在函数作用域内,相当于定义了一 ...

  5. Jenkins实现CI(Continuous Integration)到CD(Continuous Delivery)

    Pipeline as Code是2.0的精髓所在,是帮助Jenkins实现CI(Continuous Integration)到CD(Continuous Delivery)华丽转身的关键推手.所谓 ...

  6. UVA 12338:Anti-Rhyme Pairs(后缀数组+ST表)

    [题目链接] click [题目大意] 给出一些字符串,询问查询任意两个字符串的最长公共前缀 [题解] 将字符串拼接,对拼接的字符串做后缀数组,对于查询的两个字符串, 只要在height数组上查询区间 ...

  7. 【Java】【高精度】【递推】UVA - 11375 - Matches

    d[i+c[j]]+=d[i](c[j]是拼成j所需的火柴数) d[0]=1: 别忘了不能有前导零,所以当i为零时,不要尝试去拼成零.反而应该在n>=6时,最后给答案加1(单独拼出0). imp ...

  8. git远程仓库创建及权限管理(二)多个项目

    本文介绍ubutu下使用gitolite实现多项目的权限管理1.安装git sudo apt-get install git 2.设置Git的user name和email: git config - ...

  9. [WikiOI "天梯"1281] Xn数列

    题目描述Description 给你6个数,m, a, c, x0, n, g Xn+1 = ( aXn + c ) mod m,求Xn m, a, c, x0, n, g<=10^18 输入描 ...

  10. 消除Xcode 5中JosnKit类库的bit masking for introspection of objective-c 警告

    Xcode 5中苹果对多个系统框架及相关类库进行了改进.之前建立的项目在Xcode 5中重新编译会产生一些新问题. JosnKit是常用的轻量级Josn解析类,在Xcode 5中: BOOL work ...