CentOS 6.4系统下编译安装LNMP和配置PHP环境具体步骤
一、准备工作
上pkgs.org下载rmpforge。rpmforge是一个第三方yum源。
选择相应的版本下载安装。
// 安装成功后,清空yum list 并 重新获取
[root@pangou desktop]# yum clean all
loaded plugins: fastestmirror, refresh-packagekit, security
cleaning repos: base extras rpmforge updates
cleaning up everything
cleaning up list of fastest mirrors
[root@pangou desktop]# yum -y list
loaded plugins: fastestmirror, refresh-packagekit, security
determining fastest mirrors
// ......
卸载已存在的apache服务和php
[root@pangou desktop]# yum remove httpd php*
安装development tools
[root@pangou desktop]# yum -y groupinstall "development tools"
二、安装nginx
创建nginx目录,下载nginx,并解压缩
[root@pangou downloads]# mkdir nginx
[root@pangou downloads]# cd nginx/
[root@pangou nginx]# pwd
/root/downloads/nginx
[root@pangou nginx]# wget http://nginx.org/download/nginx-1.4.0.tar.gz
--2013-04-30 23:13:44-- http://nginx.org/download/nginx-1.4.0.tar.gz
resolving nginx.org... 206.251.255.63
connecting to nginx.org|206.251.255.63|:80... connected.
http request sent, awaiting response... 200 ok
length: 773451 (755k) [application/octet-stream]
saving to: “nginx-1.4.0.tar.gz”
100%[================================================================>] 773,451 184k/s in 4.5s
2013-04-30 23:13:48 (166 kb/s) - “nginx-1.4.0.tar.gz” saved [773451/773451]
[root@pangou nginx]# ls
nginx-1.4.0.tar.gz
[root@pangou nginx]# tar -zxvf nginx-1.4.0.tar.gz
[root@pangou nginx]# ls
nginx-1.4.0 nginx-1.4.0.tar.gz
编译安装nginx
// 编译 安装路径/opt/nginx
[root@pangou nginx-1.4.0]# ./configure --prefix=/opt/nginx/
编译中如出现报错如:
./configure: error: the http rewrite module requires the pcre library.
you can either disable the module by using --without-http_rewrite_module
option, or install the pcre library into the system, or build the pcre library
statically from the source with nginx by using --with-pcre= option.
就是用yum自行结局依赖关系
[root@pangou nginx-1.4.0]# yum install pcre pcre-devel
然后重新上面的编译
// 编译 安装路径/opt/nginx
[root@pangou nginx-1.4.0]# ./configure --prefix=/opt/nginx/
// 编译成功后
[root@pangou nginx-1.4.0]# make && make install
// 最后安装完成
启动nginx服务
[root@pangou nginx]# cd /opt/nginx/sbin/
[root@pangou sbin]# ./nginx
访问127.0.0.1
服务启动成功。
三、安装php
创建文件夹php,下载php,并解压缩
[root@pangou nginx-1.4.0]# cd /root/downloads/
[root@pangou downloads]# mkdir php
[root@pangou downloads]# cd php/
[root@pangou php]# pwd
/root/downloads/php
// 下载
[root@pangou php]# wget http://cn2.php.net/get/php-5.4.14.tar.gz/from/this/mirror
// 解压
[root@pangou php]# tar -zxvf php-5.4.14.tar.gz
安装依赖包
[root@pangou php]# yum install -y libxml2-devel libjpeg-devel libpng-devel freetype-devel openssl-devel libcurl-devel libmcrypt-devel
编译php
[root@pangou php]# ls
php-5.4.14 php-5.4.14.tar.gz
[root@pangou php]# cd php-5.4.14
[root@pangou php-5.4.14]# pwd
/root/downloads/php/php-5.4.14
[root@pangou php-5.4.14]# ls
acinclude.m4 credits ltmain.sh news readme.mailinglist_rules readme.testing stamp-h.in
aclocal.m4 ext main pear readme.namespaces readme.testing2 stub.c
build extensions makedist php5.spec.in readme.new-output-api readme.unix-build-system svnclean.bat
buildconf footer makefile.frag php.gif readme.parameter_parsing_api readme.win32-build-system tests
buildconf.bat generated_lists makefile.gcov php.ini-development readme.php4-to-php5-thin-changes run-tests.php tsrm
coding_standards genfiles makefile.global php.ini-production readme.redist.bins sapi upgrading
config.guess header makerpm readme.extensions readme.release_process scripts upgrading.internals
config.sub install missing readme.ext_skel readme.self-contained-extensions server-tests-config.php vcsclean
configure install-sh mkinstalldirs readme.git-rules readme.streams server-tests.php win32
configure.in license netware readme.input_filter readme.submitting_patch snapshot zend
[root@pangou php-5.4.14]# ./configure --prefix=/opt/php --with-config-file-path=/opt/php/etc --with-mysql=/usr/ --with-mysqli=/usr/bin/mysql_config --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --with-mime-magic
// 编译时间可能有点长。。。
// 编译成功后,安装
[root@pangou php-5.4.14]# make && make install
// 安装时间也比较长
安装成功后,php的位置就应该在/opt/php目录下,接下去就是配置
// 复制配置文件到配置目录下
[root@pangou php-5.4.14]# cp /root/downloads/php/php-5.4.14/php.ini-production /opt/php/etc/php.ini
[root@pangou php-5.4.14]# cp /opt/php/etc/php-fpm.conf.default /opt/php/etc/php-fpm.conf
[root@pangou php-5.4.14]# cd /opt/php/etc/
[root@pangou etc]# ls
php-fpm.conf php-fpm.conf.default php.ini
// 然后配置nginx的配置文件,让其可以运行php
[root@pangou etc]# cd /opt/nginx/conf/
[root@pangou conf]# ls
fastcgi.conf fastcgi_params koi-utf mime.types nginx.conf scgi_params uwsgi_params win-utf
fastcgi.conf.default fastcgi_params.default koi-win mime.types.default nginx.conf.default scgi_params.default uwsgi_params.default
[root@pangou conf]# vim nginx.conf
1、去掉 #user nobody; 的#号, 变成 user nobody;
2、去掉
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param script_filename /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
之前的#号,
并修改
fastcgi_param script_filename /scripts$fastcgi_script_name;
为
[/cfastcgi_param script_filename /opt/nginx/html$fastcgi_script_name;
ode]
最终修改后的内容为:
[code]
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param script_filename /opt/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
重启nginx服务,并开启php-fpm
[root@pangou ~]# /opt/nginx/sbin/nginx
[root@pangou ~]# /opt/php/sbin/php-fpm
// 创建phpinfo文件
[root@pangou ~]# vim /opt/nginx/html/phpinfo.php
内容为
<?php
phpinfo();
?>
访问http://127.0.0.1/phpinfo.php
安装成功。mysql,mysqli等扩展都有。
这边有一点偷懒,并没有编译安装mysql,而是使用yum安装的mysql。
下一篇: 通过yarn查看完整的sql语句