阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS5安装Nginx1.4+PHP5.5 FastCGI

190次阅读
没有评论

共计 15170 个字符,预计需要花费 38 分钟才能阅读完成。

CentOS5 安装 Nginx1.4+PHP5.5 FastCGI

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 ssse2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gettext-devel libXpm-devel libtool libevent libevent-devel gd-devel gd libmcrypt libmcrypt-devel pcre pcre-devel 

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 ssse2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gettext-devel libXpm-devel libtool libevent libevent-devel gd-devel gd libmcrypt libmcrypt-devel pcre pcre-devel[plain] view plaincopyprint?
[root@lnmp software]# tar zxvf libiconv-1.14.tar.gz 
[root@lnmp software]# cd libiconv-1.14 
[root@lnmp libiconv-1.14]# ./configure –prefix=/service/libiconv 
[root@lnmp libiconv-1.14]# make && make install 

[root@lnmp software]# tar zxvf libiconv-1.14.tar.gz
[root@lnmp software]# cd libiconv-1.14
[root@lnmp libiconv-1.14]# ./configure –prefix=/service/libiconv
[root@lnmp libiconv-1.14]# make && make install
[plain] view plaincopyprint?
[root@lnmp software]# tar zxvf GD-2.50.tar.gz 
[root@lnmp software]# cd GD-2.50   
[root@lnmp GD-2.50]# perl Makefile.PL 
[root@lnmp GD-2.50]# make && make install 

[root@lnmp software]# tar zxvf GD-2.50.tar.gz
[root@lnmp software]# cd GD-2.50 
[root@lnmp GD-2.50]# perl Makefile.PL
[root@lnmp GD-2.50]# make && make install

安装 MySQL

[plain] view plaincopyprint?
[root@lnmp software]# tar zxvf mysql-5.5.34.tar.gz 
[root@lnmp software]# cd mysql-5.5.34 
[root@lnmp mysql-5.5.34]# groupadd mysql 
[root@lnmp mysql-5.5.34]# useradd -g mysql -s /sbin/nologin mysql 
[root@lnmp mysql-5.5.34]# cmake . -DCMAKE_INSTALL_PREFIX=/service/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/service/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_EXAMPLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=30307 -DCOMPILATION_COMMENT=ZWC -DWITH_DEBUG=0 
[root@lnmp mysql-5.5.34]# make && make install 
[root@lnmp mysql-5.5.34]# cp support-files/my-large.cnf /service/mysql/my.cnf 
[root@lnmp mysql-5.5.34]# chown -R mysql:mysql /data/mysql /service/mysql 
[root@lnmp mysql-5.5.34]# /service/mysql/bin/mysqld_safe –defaults-file=/service/mysql/my.cnf –basedir=/service/mysql –datadir=/data/mysql –user=mysql & 

[root@lnmp software]# tar zxvf mysql-5.5.34.tar.gz
[root@lnmp software]# cd mysql-5.5.34
[root@lnmp mysql-5.5.34]# groupadd mysql
[root@lnmp mysql-5.5.34]# useradd -g mysql -s /sbin/nologin mysql
[root@lnmp mysql-5.5.34]# cmake . -DCMAKE_INSTALL_PREFIX=/service/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/service/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_EXAMPLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=30307 -DCOMPILATION_COMMENT=ZWC -DWITH_DEBUG=0
[root@lnmp mysql-5.5.34]# make && make install
[root@lnmp mysql-5.5.34]# cp support-files/my-large.cnf /service/mysql/my.cnf
[root@lnmp mysql-5.5.34]# chown -R mysql:mysql /data/mysql /service/mysql
[root@lnmp mysql-5.5.34]# /service/mysql/bin/mysqld_safe –defaults-file=/service/mysql/my.cnf –basedir=/service/mysql –datadir=/data/mysql –user=mysql &

安装 PHP,PHP5.5 中自带了 mysqlnd,MySQL 不是必须安装的

[plain] view plaincopyprint?
[root@lnmp software]# tar zxvf php-5.5.6.tar.gz 
[root@lnmp software]# cd php-5.5.6 
[root@lnmp php-5.5.6]# groupadd webroot 
[root@lnmp php-5.5.6]# useradd -g webroot -s /sbin/nologin webroot 
[root@lnmp php-5.5.6]# ./configure –prefix=/service/php –with-config-file-path=/service/php/etc –with-gd –enable-gd-native-ttf –enable-gd-jis-conv –with-jpeg-dir –with-png-dir –with-freetype-dir –with-mcrypt –with-zlib-dir –with-xpm-dir –enable-xml –with-curl –with-zlib –enable-exif –with-zlib-dir –with-bz2 –with-libxml-dir –enable-mbstring –enable-sockets –enable-zip –enable-ftp –with-iconv-dir=/service/libiconv –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –enable-mbregex –enable-fpm –with-fpm-user=webroot –with-fpm-group=webroot  –with-pdo-mysql=mysqlnd –with-mysqli=mysqlnd –with-mysql=mysqlnd –enable-dom –with-libdir=lib64 
[root@lnmp php-5.5.6]# make && make install 
Installing shared extensions:    /service/php/lib/php/extensions/no-debug-non-zts-20121212/ 
Installing PHP CLI binary:        /service/php/bin/ 
Installing PHP CLI man page:      /service/php/php/man/man1/ 
Installing PHP FPM binary:        /service/php/sbin/ 
Installing PHP FPM config:        /service/php/etc/ 
Installing PHP FPM man page:      /service/php/php/man/man8/ 
Installing PHP FPM status page:      /service/php/php/fpm/ 
Installing PHP CGI binary:        /service/php/bin/ 
Installing PHP CGI man page:      /service/php/php/man/man1/ 
Installing build environment:    /service/php/lib/php/build/ 
Installing header files:          /service/php/include/php/ 
Installing helper programs:      /service/php/bin/ 
  program: phpize 
  program: php-config 
Installing man pages:            /service/php/php/man/man1/ 
  page: phpize.1 
  page: php-config.1 
Installing PEAR environment:      /service/php/lib/php/ 
[PEAR] Archive_Tar    – installed: 1.3.11 
[PEAR] Console_Getopt – installed: 1.3.1 
warning: pear/PEAR requires package “pear/Structures_Graph” (recommended version 1.0.4) 
warning: pear/PEAR requires package “pear/XML_Util” (recommended version 1.2.1) 
[PEAR] PEAR          – installed: 1.9.4 
Wrote PEAR system config file at: /service/php/etc/pear.conf 
You may want to add: /service/php/lib/php to your php.ini include_path 
[PEAR] Structures_Graph- installed: 1.0.4 
[PEAR] XML_Util      – installed: 1.2.1 
/service/software/php-5.5.6/build/shtool install -c ext/phar/phar.phar /service/php/bin 
ln -s -f /service/php/bin/phar.phar /service/php/bin/phar 
Installing PDO headers:          /service/php/include/php/ext/pdo/ 
[root@lnmp php-5.5.6]# cp php.ini-production /service/php/etc/php.ini 
[root@lnmp php-5.5.6]# cp /service/php/etc/php-fpm.conf.default /service/php/etc/php-fpm.conf 
[root@lnmp php-5.5.6]# /service/php/sbin/php-fpm 
[root@lnmp php-5.5.6]# netstat -lanp|grep php-fpm 
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                  LISTEN      5483/php-fpm.conf)   
unix  3      []        STREAM    CONNECTED    459737 5483/php-fpm.conf)   
unix  3      []        STREAM    CONNECTED    459736 5483/php-fpm.conf)   
[root@lnmp php-5.5.6]# ps -ef|grep php 
root      5483    1  0 23:19 ?        00:00:00 php-fpm: master process (/service/php/etc/php-fpm.conf) 
webroot  5484  5483  0 23:19 ?        00:00:00 php-fpm: pool www         
webroot  5485  5483  0 23:19 ?        00:00:00 php-fpm: pool www         
root      5497 24209  0 23:21 pts/0    00:00:00 grep php 

[root@lnmp software]# tar zxvf php-5.5.6.tar.gz
[root@lnmp software]# cd php-5.5.6
[root@lnmp php-5.5.6]# groupadd webroot
[root@lnmp php-5.5.6]# useradd -g webroot -s /sbin/nologin webroot
[root@lnmp php-5.5.6]# ./configure –prefix=/service/php –with-config-file-path=/service/php/etc –with-gd –enable-gd-native-ttf –enable-gd-jis-conv –with-jpeg-dir –with-png-dir –with-freetype-dir –with-mcrypt –with-zlib-dir –with-xpm-dir –enable-xml –with-curl –with-zlib –enable-exif –with-zlib-dir –with-bz2 –with-libxml-dir –enable-mbstring –enable-sockets –enable-zip –enable-ftp –with-iconv-dir=/service/libiconv –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –enable-mbregex –enable-fpm –with-fpm-user=webroot –with-fpm-group=webroot  –with-pdo-mysql=mysqlnd –with-mysqli=mysqlnd –with-mysql=mysqlnd –enable-dom –with-libdir=lib64
[root@lnmp php-5.5.6]# make && make install
Installing shared extensions:    /service/php/lib/php/extensions/no-debug-non-zts-20121212/
Installing PHP CLI binary:        /service/php/bin/
Installing PHP CLI man page:      /service/php/php/man/man1/
Installing PHP FPM binary:        /service/php/sbin/
Installing PHP FPM config:        /service/php/etc/
Installing PHP FPM man page:      /service/php/php/man/man8/
Installing PHP FPM status page:      /service/php/php/fpm/
Installing PHP CGI binary:        /service/php/bin/
Installing PHP CGI man page:      /service/php/php/man/man1/
Installing build environment:    /service/php/lib/php/build/
Installing header files:          /service/php/include/php/
Installing helper programs:      /service/php/bin/
  program: phpize
  program: php-config
Installing man pages:            /service/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /service/php/lib/php/
[PEAR] Archive_Tar    – installed: 1.3.11
[PEAR] Console_Getopt – installed: 1.3.1
warning: pear/PEAR requires package “pear/Structures_Graph” (recommended version 1.0.4)
warning: pear/PEAR requires package “pear/XML_Util” (recommended version 1.2.1)
[PEAR] PEAR          – installed: 1.9.4
Wrote PEAR system config file at: /service/php/etc/pear.conf
You may want to add: /service/php/lib/php to your php.ini include_path
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util      – installed: 1.2.1
/service/software/php-5.5.6/build/shtool install -c ext/phar/phar.phar /service/php/bin
ln -s -f /service/php/bin/phar.phar /service/php/bin/phar
Installing PDO headers:          /service/php/include/php/ext/pdo/
[root@lnmp php-5.5.6]# cp php.ini-production /service/php/etc/php.ini
[root@lnmp php-5.5.6]# cp /service/php/etc/php-fpm.conf.default /service/php/etc/php-fpm.conf
[root@lnmp php-5.5.6]# /service/php/sbin/php-fpm
[root@lnmp php-5.5.6]# netstat -lanp|grep php-fpm
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                  LISTEN      5483/php-fpm.conf) 
unix  3      []        STREAM    CONNECTED    459737 5483/php-fpm.conf) 
unix  3      []        STREAM    CONNECTED    459736 5483/php-fpm.conf) 
[root@lnmp php-5.5.6]# ps -ef|grep php
root      5483    1  0 23:19 ?        00:00:00 php-fpm: master process (/service/php/etc/php-fpm.conf)
webroot  5484  5483  0 23:19 ?        00:00:00 php-fpm: pool www       
webroot  5485  5483  0 23:19 ?        00:00:00 php-fpm: pool www       
root      5497 24209  0 23:21 pts/0    00:00:00 grep php
安装 nginx

[plain] view plaincopyprint?
[root@lnmp software]# tar zxvf nginx-1.4.4.tar.gz 
[root@lnmp software]# cd nginx-1.4.4 
[root@lnmp nginx-1.4.4]# ./configure –prefix=/service/nginx –with-http_ssl_module –with-pcre –with-http_spdy_module –with-http_stub_status_module –with-pcre –user=webroot –group=webroot 
…………………… 
Configuration summary 
  + using system PCRE library 
  + using system OpenSSL library 
  + md5: using OpenSSL library 
  + sha1: using OpenSSL library 
  + using system zlib library 
 
  nginx path prefix: “/service/nginx” 
  nginx binary file: “/service/nginx/sbin/nginx” 
  nginx configuration prefix: “/service/nginx/conf” 
  nginx configuration file: “/service/nginx/conf/nginx.conf” 
  nginx pid file: “/service/nginx/logs/nginx.pid” 
  nginx error log file: “/service/nginx/logs/error.log” 
  nginx http access log file: “/service/nginx/logs/access.log” 
  nginx http client request body temporary files: “client_body_temp” 
  nginx http proxy temporary files: “proxy_temp” 
  nginx http fastcgi temporary files: “fastcgi_temp” 
  nginx http uwsgi temporary files: “uwsgi_temp” 
  nginx http scgi temporary files: “scgi_temp” 
 
[root@lnmp nginx-1.4.4]# make && make install 

[root@lnmp software]# tar zxvf nginx-1.4.4.tar.gz
[root@lnmp software]# cd nginx-1.4.4
[root@lnmp nginx-1.4.4]# ./configure –prefix=/service/nginx –with-http_ssl_module –with-pcre –with-http_spdy_module –with-http_stub_status_module –with-pcre –user=webroot –group=webroot
……………………
Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + md5: using OpenSSL library
  + sha1: using OpenSSL library
  + using system zlib library

  nginx path prefix: “/service/nginx”
  nginx binary file: “/service/nginx/sbin/nginx”
  nginx configuration prefix: “/service/nginx/conf”
  nginx configuration file: “/service/nginx/conf/nginx.conf”
  nginx pid file: “/service/nginx/logs/nginx.pid”
  nginx error log file: “/service/nginx/logs/error.log”
  nginx http access log file: “/service/nginx/logs/access.log”
  nginx http client request body temporary files: “client_body_temp”
  nginx http proxy temporary files: “proxy_temp”
  nginx http fastcgi temporary files: “fastcgi_temp”
  nginx http uwsgi temporary files: “uwsgi_temp”
  nginx http scgi temporary files: “scgi_temp”

[root@lnmp nginx-1.4.4]# make && make install

配置 nginx

[plain] view plaincopyprint?
[root@lnmp conf]# cat /service/nginx/conf/nginx.conf 
user  webroot webroot; 
worker_processes  1; 
 
events {
    worker_connections  1024; 

 
 
http {
    include      mime.types; 
    default_type  application/octet-stream; 
 
    sendfile        on; 
 
    keepalive_timeout  65; 
 
 
    server {
        listen      80; 
        server_name  localhost; 
        index index.php index.html index.shtml index.htm; 
        root /service/nginx/html; 
 
        location / {
        try_files $uri $uri/ /index.php?$args; 
        } 
         
        location ~ .*\.(php)?$ 
        {
        expires -1s; 
        try_files $uri =404; 
        fastcgi_split_path_info ^(.+\.php)(/.+)$; 
        include fastcgi_params; 
        fastcgi_param PATH_INFO $fastcgi_path_info; 
        fastcgi_index index.php; 
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
        fastcgi_pass 127.0.0.1:9000; 
        #fastcgi_pass unix:/var/run/phpfpm.sock; 
        #php-fpm.conf listen = /var/run/phpfpm.sock## 
        } 
 
        error_page  500 502 503 504  /50x.html; 
        location = /50x.html {
            root  html; 
        } 
 
 
 
    } 
 

[root@lnmp conf]# /service/nginx/sbin/nginx -t 
nginx: the configuration file /service/nginx/conf/nginx.conf syntax is ok 
nginx: configuration file /service/nginx/conf/nginx.conf test is successful 

[root@lnmp conf]# cat /service/nginx/conf/nginx.conf
user  webroot webroot;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include      mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen      80;
        server_name  localhost;
        index index.php index.html index.shtml index.htm;
        root /service/nginx/html;

        location / {
        try_files $uri $uri/ /index.php?$args;
        }
       
        location ~ .*\.(php)?$
        {
        expires -1s;
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass 127.0.0.1:9000;
        #fastcgi_pass unix:/var/run/phpfpm.sock;
        #php-fpm.conf listen = /var/run/phpfpm.sock##
        }

        error_page  500 502 503 504  /50x.html;
        location = /50x.html {
            root  html;
        }

 

    }

}
[root@lnmp conf]# /service/nginx/sbin/nginx -t
nginx: the configuration file /service/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /service/nginx/conf/nginx.conf test is successful

启动 nginx

[root@lnmp conf]# /service/nginx/sbin/nginx 
[root@lnmp conf]# netstat -lanp|grep nginx 
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                  LISTEN      9867/nginx           
unix  3      []        STREAM    CONNECTED    465408 9867/nginx           
unix  3      []        STREAM    CONNECTED    465407 9867/nginx   

CentOS5 安装 Nginx1.4+PHP5.5 FastCGI

CentOS5 安装 Nginx1.4+PHP5.5 FastCGI

推荐阅读

Nginx 实现反向代理和负载均衡的配置及优化 http://www.linuxidc.com/Linux/2013-11/92909.htm

Nginx 做负载均衡报:nginx: [emerg] could not build the types_hash http://www.linuxidc.com/Linux/2013-10/92063.htm

Nginx 负载均衡模块 ngx_http_upstream_module 详述 http://www.linuxidc.com/Linux/2013-10/91907.htm

Nginx+Firebug 让浏览器告诉你负载均衡将请求分到了哪台服务器 http://www.linuxidc.com/Linux/2013-10/91824.htm

Ubuntu 安装 Nginx php5-fpm MySQL(LNMP 环境搭建) http://www.linuxidc.com/Linux/2012-10/72458.htm

Nginx 的详细介绍 :请点这里
Nginx 的下载地址 :请点这里

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计15170字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中