CentOS6.4 64位搭建Nginx1.5与PHP5.5配置步骤

(1)安装Nginx1.5.2
更新Nginx和PHP的依赖包
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng \
libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel \
glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel \
curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel \
openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients \
openldap-servers gd gd2 gd-devel gd2-devel perl-CPAN

安装Nginx所需的pcre库
tar zxvf pcre-8.33.tar.gz
cd pcre-8.33
./configure
make && make install
ln -s /usr/local/lib/libpcre.so.1 /usr/lib64/libpcre.so.1
cd ../

tar zxvf nginx-1.5.2.tar.gz
cd nginx-1.5.2
./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module \
--with-http_ssl_module --with-http_realip_module --with-http_image_filter_module
make
make install
/usr/sbin/groupadd www
/usr/sbin/useradd -g www www

创建web根目录并修改权限,当然可以指定其他目录,只要和Nginx配置文件一致即可
mkdir -p /data0/htdocs/www
chmod +w /data0/htdocs/www
chown -R www:www /data0/htdocs/www

vi /usr/local/webserver/nginx/conf/nginx.conf
修改#user  nobody;为user www www;
修改location /{}中的root html;为网站目录例如/data0/htdocs/www
在/data0/htdocs/www目录中随便创建一个index.html文件
启动nginx并访问测试
ulimit -SHn 65535
/usr/local/webserver/nginx/sbin/nginx
其他命令:
测试nginx的配置文件是否正确/usr/local/webserver/nginx/sbin/nginx -t
修改nginx配置文件后使之生效/usr/local/webserver/nginx/sbin/nginx -s reload

(2)安装PHP
安装PHP所需依赖包
tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local
make
make install
cd ../

tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
cd ../../

tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../

对共享库做符号链接
ln -s /usr/local/lib/libmcrypt.la /usr/lib64/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib64/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib64/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib64/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib64/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib64/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib64/libmhash.so.2.0.1
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
ln -s /usr/local/webserver/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd ../

tar zxvf php-5.5.0.tar.gz

cd php-5.5.0

./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc \
--with-mysql=/usr/local/webserver/mysql --with-mysqli=/usr/local/webserver/mysql/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-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization \
--with-curl --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 --enable-soap \
--enable-opcache=no --without-pear --disable-fileinfo

如果内存较大 可以去掉--disable-fileinfo

make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-development /usr/local/webserver/php/etc/php.ini
cd ../
cp /usr/local/webserver/php/etc/php-fpm.conf.default /usr/local/webserver/php/etc/php-fpm.conf

修改
user = nobody
group = nobody

user = www
group = www
将;pid = run/php-fpm.pid前的;去掉并修改为
pid = /usr/local/webserver/php/var/run/php-fpm.pid

启动php-fpm
/usr/local/webserver/php/sbin/php-fpm

(3)配置Nginx支持PHP,并支持pathinfo
vi /usr/local/webserver/nginx/conf/fastcgi.conf
将fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;前加#注释
并在最上方添加
#------------------------------------------------------
fastcgi_pass   127.0.0.1:9000;
#fastcgi_index  index.php;

set $path_info "";
set $real_fastcgi_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
        set $real_fastcgi_script_name $1;
        set $path_info $2;
}
fastcgi_param  SCRIPT_NAME        $real_fastcgi_script_name;
fastcgi_param  PATH_INFO $path_info;
#------------------------------------------------------
vi /usr/local/webserver/nginx/conf/nginx.conf
找到第一个server中的location /{***} 然后添加
#------------------------------------------------------
     location ~* .*\.php($|/){
                 include  fastcgi.conf;
        }
#------------------------------------------------------
使配置文件生效
kill -USR2 `cat /usr/local/webserver/php/var/run/php-fpm.pid`
/usr/local/webserver/nginx/sbin/nginx -s reload

将Nginx与fpm加入自启动
vi /etc/rc.local
输入
ulimit -SHn 65535
/usr/local/webserver/php/sbin/php-fpm
/usr/local/webserver/nginx/sbin/nginx
=====================================================
编译PHP扩展模块memcache、pdo_mysql、imagick
tar zxvf memcache-2.2.7.tgz
cd memcache-2.2.7
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
cd ../

tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-mysql=/usr/local/webserver/mysql
ln -s /usr/local/webserver/mysql/include/* /usr/local/include/
make
make install
cd ../

tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make
make install
cd ../

tar zxvf imagick-3.1.0RC2.tgz
cd imagick-3.1.0RC2
/usr/local/webserver/php/bin/phpize
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
cd ../
修改php的配置文件
vi /usr/local/webserver/php/etc/php.ini
查找;extension_dir = "/" 将前面的;去掉并修改为
extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20121212/"
并加入
extension=memcache.so
extension=pdo_mysql.so
extension=imagick.so
执行kill -USR2 `cat /usr/local/webserver/php/var/run/php-fpm.pid`
使配置文件生效
------------------------------------------------------------------
(4)nginx的其他配置及优化
将;gzip on前的;去掉开启gzip压缩
并加入详细参数

gzip_min_length 1k;
gzip_buffers 16 64k;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;

如果需要将所有请求都重写到index.php在location /{}中添加如下代码即可
if (!-e $request_filename){
    rewrite ^(.*)$ /index.php/$1 last;
}

时间: 2024-11-02 14:53:47

CentOS6.4 64位搭建Nginx1.5与PHP5.5配置步骤的相关文章

centos6.5 64位,安装gearman-mysql-udf,报错!

问题描述 centos6.5 64位,安装gearman-mysql-udf,报错! 登入MySQL运行语句注册UDF函数: CREATE FUNCTION gman_do_background RETURNS STRING SONAME 'libgearman_mysql_udf.so'; 这时报错: ERROR 1126 (HY000): Can't open shared library 'libgearman_mysql_udf.so' (errno: 11 libgearman.so.

centos6 5 64位-centos6.5 64位上gdb调试无法使用了

问题描述 centos6.5 64位上gdb调试无法使用了 centos6.5 64位系统,突然gdb调试没办法是用了,使用gdb program_name时,打印如下信息: Could not find platform independent libraries Could not find platform dependent libraries Consider setting $PYTHONHOME to [:] ImportError: No module named site 网上

安装win8 64位纯净版系统需要满足哪些配置要求?

  安装win8 64位纯净版系统需要满足哪些配置要求?下面小编将为大家介绍一下. Win8 64位配置要求: 1.处理器:1 GHz 或更快. 2.系统内存:1 GB 系统内存(32 位)或 2 GB 系统内存(64 位). 3.硬盘空间:16 GB(32 位)或 20 GB(64 位). 4.显卡:带有 WDDM 驱动的 MicrosoftDirectX 9 图形设备. 5.若要使用某些特定功能,还需要满足额外调节 Win8附加配置要求: 1.若要使用触控,你需要支持多点触控的平板电脑或显示

CentOS6 32/64位安装Adobe Flash Player组件方法

前几天一个网友在Linux CentOS6服务器中的某个需要远程操作的项目需要使用到Adobe Flash Player组件,直接通过YUM方式安装不了,于是通过强大的搜索,还是可以解决到安装方法的,通过重新加载安装Adobe RPM包后再YUM安装组件即可实现,这里就记录下来以便以后有需要. 第一.安装Adobe YUM RPM包 1.64位  代码如下 复制代码 rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-relea

winows7 64位成功安装theano,并且gpu配置成功

之前一直在linux下用theano,gpu很好配.上周需要在windows下工作,于是折腾了一周,刚才莫名其妙就配好了gpu. 先上一个theano成功使用gpu的截图 下面是我配置theano的经验: 基本上是两步走: 1.安装theano 2.安装cuda 注意在win7 64位下,python和cuda要统一,要么都用32位,要么都用64位的. 在windows下最麻烦的可能就是安装theano了,根据官方文档的步骤http://deeplearning.net/software/the

CentOS6.5 64位系统安装配置KVM虚拟机步骤详解

环境: 系统版本:CentOS 6.5 x86_64 内存:8G CPU:Intel i5-4430 IP:192.168.1.100 一.KVM简介 KVM是开源软件,全称是kernel-based virtual machine(基于内核的虚拟机),是一个开源的系统虚拟化模块,基于硬件的完全虚拟化,不过需要硬件支持(如Intel VT技术或者AMD V技术).自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码

centos6.5 64位下haproxy安装配置与使用例子

系统版本:centos6.5_x64 软件版本:haproxy-1.5.9.tar.gz 后端服务器IP:10.10.10.5.10.10.10.6 这里提供haproxy的本站下载地址:wget -c http://www.rootop.org/rs/haproxy-1.5.9.tar.gz 安装: [root@rootop-haproxy haproxy-1.5.9]# make TARGET=linux26 PREFIX=/usr/local/haproxy install 这里为什么是l

ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能

ubuntu的64位下的android环境,说实话,还真得费点精力了,解决一个问题,又出来一个新问题. 小编昨天刚好不容易将android的环境搭建好了,这不,刚建了个项目,直接就报错,下面是罗列出的几条: 1. libstdc++.so.6:cannot open shared object file:no such file or directory 2. Description Resource Path Location Type Error executing aapt: Cannot

传三星效仿苹果推64位芯片智能手机

硅谷网讯 在三星于http://www.aliyun.com/zixun/aggregation/39118.html">韩国首尔举行的Analyst Day大会上,该公司System LSI部门总裁禹南星(Stephen Woo)声称,三星将利用"两步法"来开发这种芯片:首先,三星将会参照ARM的设计来研发64位芯片:然后,再根据实际情况来优化设计. "很多人都感到奇怪,我们为什么需要针对移动设备的64位芯片."禹南星说,"直到三个月之前