• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
车车大人
博客园    首页    新随笔    联系   管理     

linux安装php

一.php是什么?

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

二.安装前准备:

1.可去php官网php.net下载合适的php版本。<http://php.net/downloads.php>

三.下面开始安装:

解压下载安装包

# tar -zxvf php-5.6.29.tar.gz

# cd php-5.6.29

 

参考:

./configure --prefix=/usr/local/php5.6.35  --with-mysql=/usr/local/mysql  --with-xmlrpc --with-openssl --with-zlib --with-freetype-dir=/usr/local/freetype --with-gd-dir=/usr/local/gd --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-iconv-dir=/usr/local/libiconv-1.14 --enable-short-tags --enable-sockets --enable-zend-multibyte --enable-soap --enable-mbstring --enable-static --enable-gd-native-ttf --with-curl --with-xsl --enable-ftp --with-libxml-dir=/usr/ --enable-gd-native-ttf --enable-zip --enable-fastcgi --enable-fpm

 

参考:

./configure --prefix=/usr/local/php --enable-mbstring --with-mcrypt --with-mhash --enable-fpm (这段话扩展太少,建议复制上边红色部分,前提是要先安装好mysql)

--with-config-file-path=/etc 这是很重要的一句,用来指定php.ini的位置

而且要注意去解压后的源码里面执行这句话 。 cp php.ini-development /etc/php.ini

如果红色部分报错,那么编译下面这部分(这个就可以了,嘿嘿)
./configure --prefix=/usr/local/php --disable-fileinfo  --with-mysql=/usr/local/mysql --with-openssl --enable-mbstring --with-mcrypt --with-mhash --enable-fpm --with-config-file-path=/etc

make && make install

 

 

如果make报错,那么使用下面这句话

make ZEND_EXTRA_LIBS='-liconv'

 

2.下面开始配置:

# cd  /usr/local/php/etc

# 需要对目录下的php-fpm配置文件备份并且编辑配置

# cp php-fpm.conf.default  php-fpm.conf

# vim php-fpm.conf

#去掉下列变量前面的注释,以避免启动php-fpm时报错

pm.max_children = 40

pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500

:wq 保存 退出

⬆️⬆️⬆️

注意一下这里的报错,还会有一个child什么的,把那个设置成40就可以!        (pm.max_children = 40)

 

3.整合安装好的nginx和php

# vim /usr/local/nginx/conf/nginx.conf

location / { 
      root /data/nginxwebs;    #项目目录  
      index index.html index.htm index.php;  #在原来基础上增加解析index.php 
} 

location ~ /.php$ { 
  root html; 
  fastcgi_pass 127.0.0.1:9000; 
  fastcgi_index index.php; 
       fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

  include fastcgi_params; 

}

4.重启nginx以及php进行访问 。

1)重启nginx:/usr/local/nginx/sbin/nginx -s reload

2)重启php    /usr/local/php/sbin/php-fpm 

如果说重启报错,那么直接   

killall /usr/local/php/sbin/php-fpm

然后 /usr/local/php/sbin/php-fpm就可以了

#以下为本次安装中的报错解决:

1.Error: mcrypt.h not found. Please reinstall libmcrypt ?

yum  install  php-mcrypt  libmcrypt  libmcrypt-devel 

2.还有其他的依赖库报错需要进行安装(仅供参考)

yum install libxml2-devel  

yum install curl curl-devel

 

## php-fpm ?

1.PHP-FPM是一个PHPFastCGI管理器,是只用于PHP的.

2.相对Spawn-FCGI,PHP-FPM在CPU和内存方面的控制都更胜一筹,而且前者很容易崩溃,必须用crontab进行监控,而PHP-FPM则没有这种烦恼。
3.PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,比spawn-fcgi具有更多优点,所以被PHP官方收录了。
4.在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

=============使用PHP-FPM来控制PHP-CGI的FastCGI进程==================
/usr/local/php/sbin/php-fpm{start|stop|quit|restart|reload|logrotate}
--start 启动php的fastcgi进程
--stop 强制终止php的fastcgi进程
--quit 平滑终止php的fastcgi进程
--restart 重启php的fastcgi进程
--reload 重新平滑加载php的php.ini
--logrotate 重新启用log文件

致此本次安装完成,以上属个人安装,仅供参考 。

通往牛逼的路上,在意的只有远方!
posted @ 2018-01-18 16:42  车车大人  阅读(308)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3