zoukankan      html  css  js  c++  java
  • ubuntu16.04 配置php和python共用一个web容器(apache)

    先说一下运行环境要求:

    系统:ubuntu server 16.04

    后端环境:PHP5.6,python2.7

    数据库:mysql mongodb

    1.安装mongodb

    # apt-get install mongodb

    安装完成,如下图所示

    但是这时候的mongo只能本机连接,所以需要修改一下mongo的配置,将bind_ip绑定到本地回环

    #vi /etc/mongodb.conf

    重启一下mongodb 服务

    #service mongodb restart

    2.python 运行环境的安装

    2.1python pip的安装

    # apt-get install python-pip

    2.2flask pymongo安装

    安装flask

    # pip install flask

    安装pymongo

    # pip install pymongo

    相关的环境安装完成后,可以使用 pip list 命令查看

    3.mysql 安装

    输入以下命令

     # apt-get install mysql-server

    当要求输入数据库用户的根用户密码,设置 root@root

    如下图所示:

     4.php apache 安装

    以下命令依次执行即可

    # apt install software-properties-common

    #add-apt-repository ppa:ondrej/php

    #apt-get update

    #apt-get -y install apache2 php5.6 libapache2-mod-php5.6 php5.6-mcrypt php5.6-mysql

    5.flask嵌入apache服务器配置

    安装wsgi模块并配置后端应用

    #apt-get install apache2 libapache2-mod-wsgi

    进入python 后端代码根目录,创建一个.wsgi文件并写入以下内容

    假设后端代码根路径为:/var/www/appRoot, 新建一个index.wsgi 

    写入以下内容:

    import sys                                                                 

    sys.path.insert(0, '/var/www/appRoot')

    from index import app as application

    创建apache的配置文件

    #vi /etc/apache2/sites-available/index.conf

    在文件中输入:

    <VirtualHost *:8082>

        ServerName cml 

        ServerAdmin cml@qq.com

        WSGIScriptAlias / /var/www/appRoot/index.wsgi

        <Directory /var/www/appRoot>

            Order allow,deny

            Allow from all

        </Directory>

        ErrorLog /var/www/appRoot/appRoot-error.log

        LogLevel warn

        CustomLog /var/www/appRoot/appRoot-access.log combined    

    </VirtualHost>

    使配置生效

    #a2ensite index.conf

    上面是配置flask应用的端口及根目录的路径,日志,访问权限,但是这还不够,还要修改apache的监听端口配置

    修改apache端口监听配置

    #vi /etc/apache2/ports.conf

    加入Listen 8082

    这样apache就会监听80和8082端口,访问的时候是php的,8082是python flask的,最后重启一下apache

    重启apache

    #/etc/init.d/apache2 restart

  • 相关阅读:
    [转] Web前端优化之 Server篇
    [转] Web前端优化之 内容篇
    [学习笔记] Web设计过程中该做和不该做的
    web前端性能优化
    jQuery代码片段
    socket.io
    ajax阻塞UI线程
    前端面试题整理
    nodejs之async异步编程
    jquery源码笔记
  • 原文地址:https://www.cnblogs.com/makalochen/p/11395499.html
Copyright © 2011-2022 走看看