先说一下运行环境要求:
系统: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