tengine php mysql_安装Tengine php mysql
安装Tengine php mysql
系统环境:
[root@web02 soft]# lsb_release -a
LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.9 (Final)
Release: 5.9
Codename: Final
[root@web02 soft]# cat /etc/redhat-release
CentOS release 5.9 (Final)
[root@web02 soft]# uname -a
Linux web02 2.6.18-348.el5 #1 SMP Tue Jan 8 17:53:53 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
系统采用163 epel源,已经清除32位包
软件版本:
Tengine.1.4.4
php 5.3.24
mysql 5.5.31
libiconv 1.14
libmcrypt 2.5.8
mhash 0.9.9.9[root@web02 ~]# mkdir soft
[root@web02 ~]# cd soft
[root@web02 soft]# wget http://tengine.taobao.org/download/tengine-1.4.4.tar.gz
[root@web02 soft]# wget http://cn2.php.net/get/php-5.3.24.tar.gz/from/this/mirror
[root@web02 soft]# wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.31-linux2.6-x86_64.tar.gz/from/http://cdn.mysql.com/
[root@web02 soft]# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
[root@web02 soft]# wget http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz/download
[root@web02 soft]# wget http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download
安装Tengine
[root@web02 soft]# useradd www -s /sbin/nologin
[root@web02 soft]# yum -y install pcre* gcc* libxml2-devel gd-devel openssl-devel curl*
[root@web02 soft]# tar xf tengine-1.4.4.tar.gz
[root@web02 soft]# cd tengine-1.4.4
[root@web02 tengine-1.4.4]# ./configure --user=www --group=www --prefix=/usr/local/tengine --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --with-http_upstream_check_module --with-pcre
[root@web02 tengine-1.4.4]# make && make install
[root@web02 tengine-1.4.4]# vim /usr/local/tengine/conf/fcgi.conf
if ($request_filename ~* (.*)\.php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 403;
}
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with--enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
安装mysql
[root@web02 soft]# useradd mysql -s /sbin/nologin
[root@web02 soft]# tar xf mysql-5.5.31-linux2.6-x86_64.tar.gz -C /usr/local/
[root@web02 local]# ln -sv mysql-5.5.31-linux2.6-x86_64/ mysql
create symbolic link `mysql' to `mysql-5.5.31-linux2.6-x86_64/'
[root@web02 local]# cd mysql
[root@web02 mysql]# scripts/mysql_install_db --user=mysql
[root@web02 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@web02 mysql]# cp support-files/my-huge.cnf /etc/my.cnf
[root@web02 mysql]# /etc/init.d/mysqld start
Starting MySQL... [ OK ]
[root@web02 mysql]# echo 'PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile
[root@web02 mysql]# mysql
安装php
在安装之前呢 我们需要安装libiconv libmcrypt mhash
[root@web02 soft]# tar xf libiconv-1.14.tar.gz
[root@web02 soft]# tar xf mhash-0.9.9.9.tar.gz
[root@web02 soft]# tar xf php-5.3.24.tar.gz
[root@web02 soft]# tar xf libmcrypt-2.5.8.tar.gz
[root@web02 soft]# cd libiconv-1.14
[root@web02 libiconv-1.14]# ./configure
[root@web02 libiconv-1.14]# make && make install
[root@web02 libiconv-1.14]# cd ../mhash-0.9.9.9
[root@web02 mhash-0.9.9.9]# ./configure
[root@web02 mhash-0.9.9.9]# make && make install
[root@web02 mhash-0.9.9.9]# cd ../libmcrypt-2.5.8
[root@web02 libmcrypt-2.5.8]# ./configure
[root@web02 libmcrypt-2.5.8]# make && make install
[root@web02 libmcrypt-2.5.8]# cd libltdl/
[root@web02 libltdl]# ./configure --with-gmetad --enable-gexec --enable-ltdl-install
[root@web02 libltdl]# make && make install
[root@web02 libltdl]# vim /etc/ld.so.conf.d/lib.conf
/usr/local/lib/
/usr/local/mysql/lib
[root@web02 libltdl]# ldconfig
正式安装php
[root@web02 soft]# cd php-5.3.24
[root@web02 php-5.3.24]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/etc/php.d --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-soap --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --with-gettext
[root@web02 php-5.3.24]# make ZEND_EXTRA_LIBS='-liconv'
[root@web02 php-5.3.24]# make install
[root@web02 php-5.3.24]# cp php.ini-production /usr/local/php/etc/php.ini
[root@web02 php-5.3.24]# cd /usr/local/php/etc/
[root@web02 etc]# cp php-fpm.conf.default php-fpm.conf
[root@web02 etc]# vim php-fpm.conf
pid = /usr/local/php/var/run/php-fpm.pid
user = www
group = www
添加Tengine让其支持php[root@web02 etc]# vim /usr/local/tengine/conf/nginx.conf
server
{
listen 80;
server_name www.yoursite.com;
indexindex.htm index.html index.php;
root /var/www/html/yoursite;
error_page 404 = http://www.yoursite.com/404.html;
location ~ .*\.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}
}
这样就支持php了
附: php启动脚本 Tengine启动脚本
php-fpm启动脚本
#! /bin/sh
### BEGIN INIT INFO
# Provides: php-fpm
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts php-fpm
# Description: starts the PHP FastCGI Process Manager daemon
### END INIT INFO
prefix=/usr/local/php
exec_prefix=${prefix}
php_fpm_BIN=${exec_prefix}/sbin/php-fpm
php_fpm_CONF=${prefix}/etc/php-fpm.conf
php_fpm_PID=${prefix}/var/run/php-fpm.pid
php_opts="--fpm-config $php_fpm_CONF"
wait_for_pid () {
try=0
while test $try -lt 35 ; do
case"$1"in
'created')
if [ -f "$2" ] ; then
try=''
break
fi
;;
'removed')
if [ ! -f "$2" ] ; then
try=''
break
fi
;;
esac
echo -n .
try=`expr $try + 1`
sleep 1
done
}
case"$1"in
start)
echo -n "Starting php-fpm "
$php_fpm_BIN $php_opts
if [ "$?" != 0 ] ; then
echo " failed"
exit 1
fi
wait_for_pid created $php_fpm_PID
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
stop)
echo -n "Gracefully shutting down php-fpm "
if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fi
kill -QUIT `cat $php_fpm_PID`
wait_for_pid removed $php_fpm_PID
if [ -n "$try" ] ; then
echo " failed. Use force-quit"
exit 1
else
echo " done"
fi
;;
force-quit)
echo -n "Terminating php-fpm "
if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fi
kill -TERM `cat $php_fpm_PID`
wait_for_pid removed $php_fpm_PID
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
restart)
$0 stop
$0 start
;;
reload)
echo -n "Reload service php-fpm "
if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fi
kill -USR2 `cat $php_fpm_PID`
echo " done"
;;
*)
echo "Usage: $0 {start|stop|force-quit|restart|reload}"
exit 1
;;
esac
nginx启动脚本
#! /bin/sh
# chkconfig: 2345 55 25
# Description: Startup script for nginx webserver on Debian. Place in /etc/init.d and
# run 'update-rc.d -f nginx defaults', or use the appropriate command on your
# distro. For CentOS/Redhat run: 'chkconfig --add nginx'
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/tengine/sbin/$NAME
CONFIGFILE=/usr/local/tengine/conf/$NAME.conf
PIDFILE=/usr/local/tengine/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop() {
kill -INT `cat $PIDFILE` || echo -n "nginx not running"
}
do_reload() {
kill -HUP `cat $PIDFILE` || echo -n "nginx can't reload"
}
case"$1"in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0
tengine php mysql_安装Tengine php mysql相关推荐
- debian安装什么mysql_安装多个mysql实例(debian版本)
安装多个mysql实例(debian版本) 我的博客已迁移到xdoujiang.com请去那边和我交流 前言:领导要求在1台DELL R710上安装多个mysql实例 一.安装第1个实例 1.当前系统 ...
- zip的mysql_安装zip的mysql
安装zip的mysql 环境介绍 win10.mysql5.7 下载mysql安装包zip 1.下载地址 2.解压到指定目录D:\dev-tool\mysql-5.7.28-winx64 3.创建配置 ...
- lnmp中怎么运行ngin和mysql_安装LNMP(Nginx+Mysql+PHP)
1:安装nginx yum install -y gcc pcre-devel openssl-devel wget http://www.nginx.org/download/nginx-1.4.2 ...
- 安装和卸载mysql_安装和卸载mysql
一.首先卸载mysql,命令如下所示: 1. >sudo apt-get autoremove --purge mysql-server-* 2.>sudo apt-get remove ...
- 已编辑好的mysql_安装好的mysql改变数据库文件位置
Linux系统: linux下,MySQL默认的数据文档存储目录为/var/lib/mysql.假如要把MySQL目录移到/home/data下需要进行下面几步: 1.home目录下建立data目录 ...
- 系统(爱旅行)部署架构 安装jdk、nginx、mysql、redis、Tengine+Lua+GM安装
标题 架构分析 准备工作 配置多个5个tomcat 修改其中4个配置文件 jdk 这一块用的Xshell 不建议 准备好几个服务器(开启两个虚拟机) 前端服务器 这块安装nginx总代码如下 后端服务 ...
- Tengine怎么去安装第三方模块、以及安装源码中的模块
Tengine怎么去安装第三方模块 检查配置文件nginx.conf的内容编辑后是否有错误 nginx -t 有以下错误,需要下载第三方模块 nginx: [emerg] unknown direct ...
- centos7离线安装tengine所需依赖
离线安装tengine所需rpm包
- linux下 安装tengine
1.什么是tengine? 说到tengine,首先还是得说下nginx了,大家对于nginx并不陌生,对于基本的需求都能满足,如果是涉及高级性能,那么就必须使用商用版nginx plus了,一谈到商 ...
最新文章
- 20行Python代码实现视频字符化
- java基础69 JavaScript产生伪验证码(网页知识)
- Python异常体系结构图
- Qt简单的解析Json数据例子(一)
- CVPR系列(二)—— 双图层实例分割,大幅提升遮挡处理性能
- mysql8.0版本的服务器名称_MySQL 8.0安装部署-运维笔记
- 20150310-删除数组中原有对象
- 引用计数和AddRef、Release
- Django学习笔记---第一天
- 一个dsp最小系统至少要有_苏州设公厕指示牌,每500米至少要有一个
- Nginx服务器上安装SSL证书
- 深入剖析Windows补丁
- java datasource 详解_Spring的datasource配置详解
- 【星门跳跃】解题报告
- 分布式之线上监控工具CAT
- 【BIB文献管理】LATEX使用bib
- Eclipse运行结果中文为乱码的问题
- GitHub 项目徽章的添加和设置
- 用MATLAB的函数scatter()绘制散点图
- 如何在GNS3中使用VPCS虚拟PC