`

centos 安装PHP 配置nginx

阅读更多

安装了一个虚拟机,装了centos 6.5,开始配置PHP环境,打算采用 LNPM

 

在 centos 下安装其实很简单,Fedora推出了类似于ubuntu中的apt的命令yum(Yellow dog Updater Modified),令Fedora的软件安装变得简单容易. 具体参见  http://www.blogjava.net/jvict/articles/305149.html 

 

比如安装mysql,只需要 yum install mysql  即可安装。

 

可通过 /etc/init.d/mysqld start 来启动。 通过 /etc/init.d/mysqld stutas 查看mysql是否运行。

 

yum也可以卸载软件   sudo yum erase

比如  sudo yum erase mysql  sudo yum erase php php-cli   sudo yum erase httpd 

 

安装php 也可以这么简单,yum -y install  php 。

 

其实,可以全套一键安装 yum -y install httpd php mysql mysql-server php-mysql 。完了只要配置就行了。

 

我想试试tar 方式安装,于是自己下载了tar包。下面是tar 安装php的方法。

 

下载  在 http://php.net/downloads.php 下载tar包

 

这几天因为php-fpm的问题在浏览器中访问php 一直提示404、502等错误。来回修改nginx的配置,最终决定重装PHP,没有卸载,直接再次重装。原因可能是依赖包不全,这次找了个全的。原博

centos 7 min 编译安装php5.6+nginx1.7.5 笔记


因为php版本较高,不用单独安装php-fpm,具体操作如下

 

 

安装php5.6.0

首先添加依赖应用
yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel

安装加密扩展库
cd /usr/local/src/
wget libmcrypt-2.5.8.tar.gz  备注1
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8 
./configure
make
make install

备注1 : wget libmcrypt-2.5.8.tar.gz  这个我一直是失败的,下载不到。所以我通过网页的方式下载了libmcrypt-2.5.8.tar.gz,解压安装

 


cd ../
wget http://cn2.php.net/distributions/php-5.6.0.tar.gz  备注2

 

备注2 : 我的php包也是官网下载的,不是 wget方式

 

tar zxvf php-5.6.0.tar.gz
cd php-5.6.0

./configure --prefix=/usr/local/php-5.6.0 --with-mysql=/usr/local/mysql --with-mysql-sock --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-fpm --with-ncurses --enable-soap --with-libxml-dir --with-XMLrpc --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --disable-mbregex --disable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-pdo-mysql --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sqlite-utf8 --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear

 

备注3:这里的mysql路径必须是系统已安装mysql的路径,否则php.ini中没有mysql.so   即,php无法关联mysql


make && make install

Build complete.
Don't forget to run 'make test'.

cp /usr/local/php-5.6.0/etc/php-fpm.conf.default php-fpm.conf
//复制一份并重命名


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


修改FPM 配置文件php-fpm.conf
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
去掉分号

ln -s /usr/local/php-5.6.0/sbin/php-fpm /bin/php-fpm
cp /usr/local/src/php-5.6.0/php.ini-producsion /usr/local/php-5.6.0/lib/php.ini


至此php-fpm安装完成

 

备注4: 安 一些启动命令:/usr/local/php/sbin/php-fpm start  

stop: 

 

/bin/ps -ef | grep 'php-fpm' | grep -v grep | cut -c 9-15 | xargs kill -9

 

 

安装nginx1.7.5
wget http://nginx.org/download/nginx-1.7.5.tar.gz


useradd www 
#添加www nginx运行账户

usermod -s /sbin/nologin -g www www
#将www加入www组并禁止www登录shell

tar zxvf nginx-1.7.5.tar.gz
cd nginx-1.7.5
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --without-http_rewrite_module --with-http_ssl_module --with-pcre


make && make install

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#启动nginx,nginx启动成功。


/usr/local/nginx/sbin/nginx -s reload
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx  //建立nginx软连接

//接下来修改nginx配置文件,根据需要修改对应文件
vim nginx.conf

user nobody;#去掉前面

根据 include fastcgi_params;
vim fastcgi_params

添加以下,保存
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#否则nginx不能找到php文件进行解析,解析php文件

fastcgi_pass   127.0.0.1:9000;  #fastcgi监听端口*/


nginx -s reload
//nginx重启

nginx安装结束。

 

 

最详细的LNMP 平台

 

http://www.cnblogs.com/mchina/archive/2012/05/17/2507102.html

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics