mod_wsgi和php,基于mod_wsgi模式安装Django
安装Apache和MySQL的时候尽量选择源代码编译安装,因为后面安装Python的MySQL扩展的时候需要用到MySQL的开发包及编译头文件。Python的版本最好为2.6.X的。
本文中源码的存放目录为:/usr/local/src,源代码均可以到各自的官方网站进行下载。
1、安装apache:
#cd httpd-2.2.17
#./configure –enable-track-vars –enable-cgi –with-config-file-path=/opt/apache/conf –enable-modules=all –enable-mods-shared=all –enable-file-cache –enable-disk-cache –enable-cache –enable-mem-cache –enable-dumpio –enable-logio –enable-mime-magic –enable-headers –enable-usertrack –enable-version –enable-ssl –enable-http –enable-rewrite –enable-proxy –enable-proxy-connect –enable-proxy-http –enable-proxy-ftp –enable-proxy-ajp –enable-proxy-balancer –enable-so
#make
#make install
#cd httpd-2.2.17
#./configure –enable-track-vars –enable-cgi –with-config-file-path=/opt/apache/conf –enable-modules=all –enable-mods-shared=all –enable-file-cache –enable-disk-cache –enable-cache –enable-mem-cache –enable-dumpio –enable-logio –enable-mime-magic –enable-headers –enable-usertrack –enable-version –enable-ssl –enable-http –enable-rewrite –enable-proxy –enable-proxy-connect –enable-proxy-http –enable-proxy-ftp –enable-proxy-ajp –enable-proxy-balancer –enable-so
#make
#make install
2、安装 mod_wsgi:
cd mod_wsgi-3.3
./configure –with-apxs=/usr/local/apache2/bin/apxs \ –with-python=/usr/bin/python
make
make install
cd mod_wsgi-3.3
./configure –with-apxs=/usr/local/apache2/bin/apxs \ –with-python=/usr/bin/python
make
make install
将编译生成的库文件拷到apache的库文件目录:
cp /usr/local/apache2/modules/mod_wsgi.so /etc/httpd/modules
cp /usr/local/apache2/modules/mod_wsgi.so /etc/httpd/modules
在/etc/httpd/conf/httpd.conf中添加:
LoadModule wsgi_module modules/mod_wsgi.so
LoadModule wsgi_module modules/mod_wsgi.so
3、安装mysql:
# cd mysql-VERSION
# ./configure
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# cd /usr/local/
# bin/mysql_install_db –user=mysql
# bin/mysqld_safe –user=mysql &
# cd mysql-VERSION
# ./configure
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# cd /usr/local/
# bin/mysql_install_db –user=mysql
# bin/mysqld_safe –user=mysql &
配置my.cnf
改动如下:
[client]
#password = your_password
port = 3306
socket = /tmp/Mysql3306.sock
# The Mysql server
[Mysqld]
port = 3306
socket = /tmp/Mysql3306.sock
[client]
#password = your_password
port = 3306
socket = /tmp/Mysql3306.sock
# The Mysql server
[Mysqld]
port = 3306
socket = /tmp/Mysql3306.sock
/*
若是你的mysql不是安装在默认路径,如安装在/usr/local/mysql,安装完成后,记得设置PATH环境变量,加上/usr/local/mysql/bin,以便运行mysql。
直接编辑/etc/environment文件,在里面修改PATH环境变量。该方法必须重启系统后才能生效,但是对于任何用户都有效。
可以设置为:
#PATH=.:/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/mysql/bin
*/
#PATH=.:/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/mysql/bin
*/
注:
安装了mysql以后,mysql的库文件默认放在/usr/local/lib/mysql下面,必须修改一下库文件的配置文件,不然在使用MySQLdb时会出现找不到库文件的错误。
(1)往/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig,不然这个library会找不到
(2)想往上面两个目录以外加东西的时候,一定要修改/etc/ld.so.conf,然后再调用ldconfig,不然也会找不到。
安装了mysql后,mysql有一大堆library在/usr/local/lib/mysql/下面,这时就需要在/etc/ld.so.conf下面加一行/usr/local/lib/mysql,保存过后ldconfig一下,新的library才能在程序运行时被找到。
连接数据库:
mysql -uroot -p
mysql -uroot -p
修改数据库root用户的密码:
mysqladmin -uroot -p password 1234//1234为新密码
mysqladmin -uroot -p password 1234//1234为新密码
4、将mysql加入系统服务
cp /usr/local/share/mysql/mysql.server /etc/init.d/mysql #把msql的脚本文件拷到系统的启动目录下
cd /etc/init.d/
chkconfig –add mysql #将mysql加到启动服务列表里
chkconfig mysql on #让系统启动时自动打开mysql服务
cp /usr/local/share/mysql/mysql.server /etc/init.d/mysql #把msql的脚本文件拷到系统的启动目录下
cd /etc/init.d/
chkconfig –add mysql #将mysql加到启动服务列表里
chkconfig mysql on #让系统启动时自动打开mysql服务
apache安装以后,默认已经在系统服务里面了,通过下面的命令可以方便的进行管理。同时也可以通过setup命令对系统服务进行设置,使其开机自启动。
管理
apache:service httpd start/restart/stop)
apache:service httpd start/restart/stop)
管理
mysql:service mysql start/restart/stop)
mysql:service mysql start/restart/stop)
5、安装setuptools
sh setuptools-0.6c9-py2.4.egg
sh setuptools-0.6c9-py2.4.egg
6、安装MySQLdb:
如果你是像前面说的,默认编译安装的MySQL,不用做任何修改。若是自定义的安装路径有所不同,对于MySQLdb的安装,用vi打开MySQLdb目录中的site.cfg文件,找到“mysql_config=”,修改后面的路径到你机器中mysql_config文件的路径。
mysql_config =/usr/local/mysql/bin/mysql_config
#python setup.py build
#python setup.py install
mysql_config =/usr/local/mysql/bin/mysql_config
#python setup.py build
#python setup.py install
测试:
# python
>>> import MySQLdb
>>>
# python
>>> import MySQLdb
>>>
没有任何输出,安装成功!
如果出现了安装或者使用错误,请参照:http://mysql-python.sourceforge.net/FAQ.html
7、安装配置Django:
下载最新安装包到本地,解压缩:
# tar -xvf django.tar.gz
进入到安装目录,执行命令安装Django:
# cd Django_x.x.x
# python setup.py install
# tar -xvf django.tar.gz
进入到安装目录,执行命令安装Django:
# cd Django_x.x.x
# python setup.py install
简单测试:
# python
>>> import django
>>>
# python
>>> import django
>>>
没有任何输出,安装成功!
8、本地测试django(开发环境):
# cd /var/www
# mkdir /test
# cd /htdocs
# django-admin.py startproject myproject
# cd myproject
# python manager.py runserver 0.0.0.0:80
# cd /var/www
# mkdir /test
# cd /htdocs
# django-admin.py startproject myproject
# cd myproject
# python manager.py runserver 0.0.0.0:80
现在访问 http://服务器IP,看到“It works”了吧 ^_^
若是其他端口,可能不能访问,这可能是由于你服务器的防火墙阻挡了,在防火墙里添加相应的端口即可。
测试正常后,按Ctrl + C退出服务器。
9、在apache上的部署
创建项目mdash,mdash的源代码存放在wman目录下:
#cd /var/www/html/wman
#django-admin.py startproject mdash
#cd /var/www/html/wman
#django-admin.py startproject mdash
配置Apache的httpd.conf以运行wsgi
#vi /etc/httpd/conf/httpd.conf
# vi /etc/httpd/conf/httpd.conf
添加以下内容:
WSGIScriptAlias / /var/www/html/wman/mdash/django.wsgi
Order Deny,Allow
Allow from all
WSGIScriptAlias / /var/www/html/wman/mdash/django.wsgi
Order Deny,Allow
Allow from all
配置django.wsgi:
#cd mdash
#touch django.wsgi
#vi django.wsgi
#cd mdash
#touch django.wsgi
#vi django.wsgi
添加如下内容:
import os, sys
sys.path.append(‘/var/www/html/wman’)
os.environ['DJANGO_SETTINGS_MODULE'] = ‘mdash.settings’
os.environ['PYTHON_EGG_CACHE'] = ‘/tmp/.python-eggs’ #防止PYTHON_EGG_CACHE无权限的问题
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
import os, sys
sys.path.append(‘/var/www/html/wman’)
os.environ['DJANGO_SETTINGS_MODULE'] = ‘mdash.settings’
os.environ['PYTHON_EGG_CACHE'] = ‘/tmp/.python-eggs’ #防止PYTHON_EGG_CACHE无权限的问题
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
mod_wsgi和php,基于mod_wsgi模式安装Django相关推荐
- Spark的安装(Standalone模式,高可用模式,基于Yarn模式)
目录 spark的Standalone模式安装 一.安装流程 1.将spark-2.2.0-bin-hadoop2.7.tgz 上传到 /usr/local/spark/ 下,然后解压 2.进入到c ...
- Windows上python开发--2安装django框架
Windows上python开发--2安装django框架 分类: 服务器后台开发2014-05-17 21:22 2310人阅读 评论(2) 收藏 举报 python django 上一篇文章中讲了 ...
- ebc是什么意思_UEFI+GPT和Legacy+MBR两种模式安装的系统有什么区别
UEFI+GPT和Legacy+MBR两种模式安装的系统有什么区别?很多电脑小白都搞不懂UEFI.GPT.BIOS.MBR到底是什么意思,下面跟随小白系统一起深入了解下UEFI+GPT和Legacy+ ...
- legacy bios与uefi两种模式安装windows8操作系统的方法
在Legacy BIOS与UEFI 两种模式安装Windows 8操作系统的方法 作者:佚名 字体:[增加 减小] 来源:互联网 时间:01-10 16:18:23 我要评论 不是所有WIN8都可以安 ...
- linux hive创建数据库失败,Hive本地模式安装及遇到的问题和解决方案
Apache Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行. 其优点是学习成 ...
- PaddleOCR——Docker环境下基于HubServing模式部署Restful API服务(CPU版本)
Docker环境下基于HubServing模式部署Restful API服务(CPU版本) 在日常项目应用中,相信大家一般都会希望能通过Docker技术,把PaddleOCR服务打包成一个镜像,以便在 ...
- 树莓派下安装Django环境
Django是Python下的一款网络服务器框架. Python下有许多款不同的框架. Django是重量级选手中最有代表性的一位. 许多成功的网站和APP都基于Django. 安装pip sudo ...
- 基于华为云的Django网站部署
学习笔记,仅供参考,有错必纠 参考自:Xshell远程连接服务器:win10 开启ssh server服务 远程登录 文章目录 基于华为云的Django网站部署 远程登录华为云 Xftp+Xshell ...
- 发布一个基于 Reactor 模式的 C++ 网络库
发布一个基于 Reactor 模式的 C++ 网络库 陈硕 (giantchen_AT_gmail) Blog.csdn.net/Solstice 2010 Aug 30 本文主要介绍 muduo 网 ...
最新文章
- min聚合函数查询带有额外字段sql|dense_rank()over(partition)|+班级学生成绩最高
- php yii2自动给值,Yii2基于Ajax自动获取表单数据的方法
- python: 多线程实现的两种方式及让多条命令并发执行
- mysql docker自动化_docker自动化部署
- [MATLAB调试笔记]phase space plot
- YTU 2586: 填空题B-字画鉴别
- 事务管理基础:排它锁和共享锁相关知识笔记
- MySql和Oracle数据库的区别?
- test1 exam5定义一个可以精确表示年、月、日、小时、分、秒的结构体
- 通过流程构建组织的【个人能力】和【团队能力】
- 我发起了一个 .Net Core 平台上的 分布式缓存 开源项目 ShareMemory 用于 取代 Redis...
- PANIC: Could not open: AVD
- springcloud之bus消息总线
- 【常见Web应用安全问题】---12、URL redirection
- 2021总结,我在CSDN这些年
- Sosoapi本地项目搭建
- 计算今天是本学期第几周
- 前端常用PS技巧总结之将图片背景透明化
- 小葵花妈妈课堂开课了:《AsyncTask源码分析》
- php页面背景url不显示图片,background-image:url(XXXX.gif)为何不显示背景图片_html/css_WEB-ITnose...