Linux下Nginx+Mysql+PHP的编译安装过程

Linux软件安装方式有很多,为了保证服务器运行的稳定性,很多人会采用编译软件安装源代码的方式来安装软件;下面我来把Godaddy VPS上的编译过程贴一下,包括安装过过程和遇到的一些问题,以及解决的办法等。需要说明的是,mysql的高级版本需要用cmake来编译

yum install gcc gcc-c++ make
wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.32.tar.gz
wget http://www.cmake.org/files/v2.8/cmake-2.8.11.2.tar.gz
wget http://nginx.org/download/nginx-1.4.1.tar.gz
wget http://us1.php.net/distributions/php-5.5.0.tar.gz
wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz -4
wget http://zlib.net/zlib-1.2.8.tar.gz -4
wget http://jaist.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz -4
wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.2/libpng-1.6.2.tar.gz -4
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.5.0.tar.gz -4
wget http://www.ijg.org/files/jpegsrc.v9.tar.gz -4
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz -4

全部解压
yum install ncurses-devel
编译cmake
configure make make install
编译mysql:
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make make install
cp ./support-files/my-huge.cnf /etc/my.cnf
./scripts/mysql_install_db –user=mysql
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
配置远程管理,设置密码等

编译nginx
1.编译pcre库
2,编译zlib库
3,编译nginx
./configure –prefix=/usr/local/nginx –user=nginx –group=nginx –with-pcre=/usr/local/src/pcre-8.33

编译php
1,编译 libmcrypt
2,编译freetype (第一次编译失败,需要libpng)
3,编译libpng
4,再次编译freetype
还是找不到libpng 用命令export PATH=$PATH:/usr/local/libpng/bin
5,编译libjpeg
./configure –prefix=/usr/local/jpeg –enable-shared
6,libxml2已经安装,curl已经安装
7,编译安装libmcrypt
8,编译安装libiconv
9,编译php,错误,显示没有安装libxml2
./configure –prefix=/usr/local/php –enable-fpm –enable-mbstring=all –with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –enable-ftp –enable-gd-native-ttf –enable-session –with-gd –with-iconv –with-zlib –enable-xml –with-freetype-dir=/usr/local/freetype –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/libpng –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –enable-sockets
10,编译安装libxml2
wget http://xmlsoft.org/sources/libxml2-2.8.0.tar.gz -4
编译chenggong
11,重新编译php
./configure –prefix=/usr/local/php –enable-fpm –enable-mbstring=all –with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –enable-ftp –enable-gd-native-ttf –enable-session –with-gd –with-iconv –with-zlib –enable-xml –with-freetype-dir=/usr/local/freetype –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/libpng –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –enable-sockets –with-libxml-dir=/usr/local/libxml –without-pear
make && make install
cp php.ini-production /usr/local/php/lib/php.ini
cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod +x /etc/rc.d/init.d/php-fpm
12,需要安装apc加速器,编译提示没有安装autoconf
13,下载编译安装autoconf
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz -4
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.
出现这个错误,需要编译安装 m4: wget http://ftp.gnu.org/gnu/m4/m4-1.4.tar.gz -4
14,继续编译APC
安装编译后还是提示这个错误export PHP_AUTOCONF=/usr/local/autoconf/bin/autoconf export PHP_AUTOHEADER=/usr/local/autoconf/bin/autoheader 成功
make出现错误 /usr/local/src/APC-3.1.9/apc_zend.c:62: error: ‘zend_execute_data’ has no member named ‘Ts’
换低版本APC安装 同样错误
yum install pcre-devel 没用
15,安装低版本php看看能不能解决 php5.4 完美解决

16,nginx服务的安装
17,安装memcached
18,必须先安装libevent
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz -4
./configure –prefix=/usr/local/libevent make && make install
19,下载安装memcached
wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz -4
./configure –prefix=/usr/local/memcached –with-libevent=/usr/local/libevent make && make install
20,下载安装php扩展 memcache
./configure –with-php-config=/usr/local/php/bin/php-config

时间: 2024-10-07 19:34:41

Linux下Nginx+Mysql+PHP的编译安装过程的相关文章

Linux下 nginx + 最新版php5.5 安装配置详解

1.nginx的安装: 首先nginx的安装需要依赖最基础的三个包,这里面我们不设计更多的扩展模块,只是安装最基础的三个包, zlib 此包主要是对http内容进行gzip压缩,减少网络传输流量 PCRE 此包主要是让nginx支持正则表达式,这个是必须装的,就连nginx的conf文件中都有正则表达式 openssl 此包主要是nginx支持https的请求 首先下载下来nginx的安装包:nginx-1.4.2.tar.gz 然后执行命令:tar -xzvf nginx-1.4.2.tar.

linux下Ubuntu 12.04 x64 编译安装lamp教程

sudo echo 'start' echo 常见错误: echo configure: error: APR not found.  Please read the documentation. echo 解决办法: wget http://labs.renren.com/apache-mirror/apr/apr-1.4.6.tar.bz2 tar -jxvf apr-1.4.6.tar.bz2 cd apr-1.4.6 ./configure --prefix=/usr/local/apr

linux下Nginx 0.8.40的安装方法_nginx

Nginx作为一个后起之秀,他的迷人之处已经让很多人都投入了他的怀抱.配置简单,实现原理简单.做一个负载平衡的再好不过了. 一.依赖的程序 1. gzip module requires zlib library 2. rewrite module requires pcre library 3. ssl support requires openssl library 二.依赖的程序的安装的方法有两种:一种是比较原始的方法一个一个来安装,另一个是最好的方法用YUM一次性安装 (1).方法一如下

linux下的mysql安装(详细rpm、源码以及二进制版本安装)详解

Linux下的mysql安装 一.mysql 的版本 1.二进制版 2.源码版 名字中含有hrc作为标识 =============================================== 第一部分:yum安装 1.配置yum源  代码如下 复制代码 [repo] name=repo baseurl=ftp://update:update@10.1.1.1/Server enabled=1 gpgcheck=0 2. rpm 安装需要安装的软件  代码如下 复制代码 mysql.i6

Centos6下mysql 5.5.* 编译安装步骤详解

MySQL5.5的源码编译采用cmake,与此前的版本有所区别,下面是一次完整的编译安装过程: 1.下载 wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.28.tar.gz/from/http://cdn.mysql.com/ 2.安装编译mysql5.5所需的一些工具 yum install gcc gcc-c++ cmake ncurses-devel bison -y 3.新建相关的用户 /usr/sbin/group

Linux下nginx配置https协议访问的方法_Linux

一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/nginx -V 如下所示: configure arguments: --prefix=/usr/local/nginx --with-google_perftools_module --without-http_memcached_module --user=www --group=www --

Linux 下卸载MySQL 5

    对于在Linux下通过rpm方式的mysql,我们可以通过移除这些rpm包以及删除项目的目录来达到卸载的目的.本文演示了在SUSE Linux 10下下载MySQL 5.5.37.具体见下文.   1.环境#OS环境SZDB:~ # cat /etc/issue Welcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l). #查看已安装的安装包SZDB:~ # rpm -qa | grep -i mys

Linux下keepalived+mysql 实现高可用

Linux下keepalived+mysql实现高可用 首先在搭建前分析,想用keepalived实现mysql高可用,那么先的对keepalived+lvs跟mysql主主复制有所了解.因为mysql+keepalived架构是在keepalived+lvs跟mysql主主复制的基础上实现的lvs+keepalived跟mysql主主复制,在前面的博文中已经介绍过了这里不啰嗦了. lvs+keepalived链接:http://duyunlong.blog.51cto.com/1054716/

Linux下nginx日志每天定时切割实例

教程目的:   使用Linux系统自带的命令logrotate对Nginx日志进行切割.   Nginx安装目录:/usr/local/nginx/   Nginx日志目录:/usr/local/nginx/logs/./usr/local/nginx/logs/nginx_logs/  1.添加nginx日志切割脚本   cd  /etc/logrotate.d  #进入目录   vi   /etc/logrotate.d/nginx   #编辑脚本   /usr/local/nginx/lo