PHP环境部署

PHP语言的概念

PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根据它们的长项持续改进提升自己,例如java的面向对象编程,该语言当初创建的主要目标是让开发人员快速编写出优质的web网站。 [1-2] PHP同时支持面向对象和面向过程的开发,使用上非常灵活。

PHP 语言的优点

  • 流行,容易上手
    PHP,驱动2亿多个网站,被超过81.7%的公共网站在服务器端所采用。PHP 将结构内置了,使用起来方便简单,也一点都不复杂,表达能力相当灵活。
  • 开发职位很多
    在服务器端的网站编程中,PHP 言会用户找到工作。很多互联网相关企业都在使用 PHP 语言开发框架,所以说市场对PHP语言开发程序员的需求还是比较大的。
  • 持续发展
    PHP语言在不断兼容着类似closures和命名空间等技术,同时兼顾性能和当下流行的框架。在7.0之后的版本,一直提供更高性能的应用。
  • 可植入性强
    PHP 语言在补丁漏洞升级过程中,核心部分植入简单易行,且速度快。
  • 拓展性强
    PHP语言在数据库应用过程中,可以从数据库调取各类数据,执行效率高。

安装PHP环境

  • 环境准备
setenforce: SELinux is disabled
[root@php ~]# systemctl stop firewalld
[root@php ~]# yum install -y gcc gcc-c++ libxml2-devel libcurl-devel openssl-devel bzip2-devel
Loaded plugins: fastestmirror
local                                                                                 | 3.6 kB  00:00:00     
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package bzip2-devel.x86_64 0:1.0.6-13.el7 will be installed
---> Package gcc.x86_64 0:4.8.5-28.el7 will be installed
--> Processing Dependency: libgomp = 4.8.5-28.el7 for package: gcc-4.8.5-28.el7.x86_64
--> Processing Dependency: cpp = 4.8.5-28.el7 for package: gcc-4.8.5-28.el7.x86_64
--> Processing Dependency: libgcc >= 4.8.5-28.el7 for package: gcc-4.8.5-28.el7.x86_64
--> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.8.5-28.el7.x86_64
--> Processing Dependency: libmpfr.so.4()(64bit) for package: gcc-4.8.5-28.el7.x86_64

---> Package curl.x86_64 0:7.29.0-25.el7.centos will be updated
talled
--> Processing Dependency: libselinux(x86-64) = 2.5-12.el7 for package: libselinux-devel-2.5-12.el7.x86_64
--> Processing Dependency: libsepol-devel(x86-64) >= 2.5-6 for package: libselinux-devel-2.5-12.el7.x86_64
--> Processing Dependency: pkgconfig(libsepol) for package: libselinux-devel-2.5-12.el7.x86_64
--> Processing Dependency: pkgconfig(libpcre) for package: libselinux-devel-2.5-12.el7.x86_64
---> Package libverto-devel.x86_64 0:0.2.5-4.el7 will be installed
---> Pac for package: systemd-219-57.el7.x86_64
--> Processing Dependency: liblz4.so.1()(64bit) for package: systemd-219-57.el7.x86_64
--> Running transaction check
---> Package lz4.x86_64 0:1.7.5-2.el7 will be installed
---> Packag         local               16 M
 gcc-c++                          x86_64              4.8.5-28.el7                  local              7.2 M
 libcurl-devel                    x86_64              7.29.0-46.el7                 local              300 k
 libxml2-devel                    x86_64              2.9.1-6.el7_2.3               local              1.0 M
 openssl-devel                    x86_64              1:1.0.2k-12.el7               local              1.5 M
Updating:
 systemd                          x86_64              219-57.el7                    local              5.0 M
Installing for dependencies:
 cpp                              x86_64              4.8.5-28.el7                  local              5.9 M
 glibc-devel                      x86_64              2.17-222.el7                  local              1.1 M
 glibc-headers                    x86_64              2.17-222.el7                  local              678 k
 kernel-headers                   x86_64              3.10.0-862.el7                local              7.1 M
 keyutils-libs-devel              x86_64              1.5.8-3.el7                   local               37 k
 krb5-devel                       x86_64              1.15.1-18.el7                 local              269 k
 libcom_err-devel                 x86_64              1.42.9-11.el7                 local               31 k
 libkadm5                         x86_64              1.15.1-18.el7                 local              175 k
 libmpc                           x86_64              1.0.1-3.el7                   local               51 k
 libselinux-devel                 x86_64              2.5-12.el7                    local              186 k
 libsepol-devel                   x86_64              2.5-8.1.el7                   local               77 k
 libstdc++-devel                  x86_64              4.8.5-28.el7                  local              1.5 M
 libverto-devel                   x86_64              0.2.5-4.el7                   local               12 k
 lz4                              x86_64              1.7.5-2.el7                   local               98 k
 mpfr                             x86_64              3.1.1-4.el7                   local              203 k
 pcre-devel                       x86_64              8.32-17.el7                   local              480 k
 xz-devel                         x86_64              5.2.2-1.el7                   local               46 k
 zlib-devel                       x86_64              1.2.7-17.el7                  local               50 k
Updating for dependencies:
 curl                             x86_64              7.29.0-46.el7                 local              268 k
 e2fsprogs                        x86_64              1.42.9-11.el7                 local              699 k
 e2fsprogs-libs                   x86_64              1.42.9-11.el7                 local              166 k
                                                  50/78 
  Verifying  : systemd-libs-219-57.el7.x86_64                                                          51/78 
  Verifying  : libselinux-utils-2.2.2-6.el7.x86_64                                                     52/78 
                                                68/78 
  Verifying  : glibc-2.17-105.el7.x86_64                                                               69/78 
  Verifying  : xz-libs-5.1.2-12alpha.el7.x86_64                                                        70/78 
  Verifying  : libselinux-2.2.2-6.el7.x86_64                                                           71/78 
  Verifying  : 1:openssl-libs-1.0.1e-42.el7.9.x86_64                                                   72/78 
  Verifying  : libselinux-python-2.2.2-6.el7.x86_64                                                    73/78 
  Verifying  : libgomp-4.8.5-4.el7.x86_64                                                              74/78 
  Verifying  : libgcc-4.8.5-4.el7.x86_64                                                               75/78 
  Verifying  : libcom_err-1.42.9-7.el7.x86_64                                                          76/78 
  Verifying  : e2fsprogs-1.42.9-7.el7.x86_64                                                           77/78 
  Verifying  : 1:openssl-1.0.1e-42.el7.9.x86_64                                                        78/78 

Installed:
  bzip2-devel.x86_64 0:1.0.6-13.el7                      gcc.x86_64 0:4.8.5-28.el7                           
  gcc-c++.x86_64 0:4.8.5-28.el7                          libcurl-devel.x86_64 0:7.29.0-46.el7                
  libxml2-devel.x86_64 0:2.9.1-6.el7_2.3                 openssl-devel.x86_64 1:1.0.2k-12.el7                

Dependency Installed:
  cpp.x8  libselinux-utils.x86_64 0:2.5-12.el7                
  libsepol.x86_64 0:2.5-8.1.el7                         libss.x86_64 0:1.42.9-11.el7                        
  libstdc++.x86_64 0:4.8.5-28.el7                       libxml2.x86_64 0:2.9.1-6.el7_2.3                    
  openssl.x86_64 1:1.0.2k-12.el7                        openssl-libs.x86_64 1:1.0.2k-12.el7                 
  pcre.x86_64 0:8.32-17.el7                             systemd-libs.x86_64 0:219-57.el7                    
  systemd-sysv.x86_64 0:219-57.el7                      xz.x86_64 0:5.2.2-1.el7                             
  xz-libs.x86_64 0:5.2.2-1.el7                          zlib.x86_64 0:1.2.7-17.el7                          

Complete!
[root@php ~]# yum install wget -y 
  Installing : wget-1.14-15.el7_4.1.x86_64                                                               1/1 
  Verifying  : wget-1.14-15.el7_4.1.x86_64                                                               1/1 

Installed:
  wget.x86_64 0:1.14-15.el7_4.1                                                                              

Complete!

下载libmerypt包 ,上传到机器环境里

[root@php ~]# ls
anaconda-ks.cfg  libmcrypt-2.5.8.tar.gz
[root@php ~]# tar xzvf libmcrypt-2.5.8.tar.gz 
[root@php ~]# cd libmcrypt-2.5.8
[root@php libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt && make && make install
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
test -z "/usr/local/libmcrypt/share/aclocal" || mkdir -p -- "/usr/local/libmcrypt/share/aclocal"
 /usr/bin/install -c -m 644 'libmcrypt.m4' '/usr/local/libmcrypt/share/aclocal/libmcrypt.m4'
make[2]: Leaving directory `/root/libmcrypt-2.5.8/lib'
make[1]: Leaving directory `/root/libmcrypt-2.5.8/lib'
Making install in src
make[1]: Entering directory `/root/libmcrypt-2.5.8/src'
make[2]: Entering directory `/root/libmcrypt-2.5.8/src'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/libmcrypt-2.5.8/src'
make[1]: Leaving directory `/root/libmcrypt-2.5.8/src'
Making install in doc
make[1]: Entering directory `/root/libmcrypt-2.5.8/doc'
make[2]: Entering directory `/root/libmcrypt-2.5.8/doc'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/libmcrypt/man/man3" || mkdir -p -- "/usr/local/libmcrypt/man/man3"
 /usr/bin/install -c -m 644 './mcrypt.3' '/usr/local/libmcrypt/man/man3/mcrypt.3'
make[2]: Leaving directory `/root/libmcrypt-2.5.8/doc'
make[1]: Leaving directory `/root/libmcrypt-2.5.8/doc'
make[1]: Entering directory `/root/libmcrypt-2.5.8'
make[2]: Entering directory `/root/libmcrypt-2.5.8'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/libmcrypt-2.5.8'
make[1]: Leaving directory `/root/libmcrypt-2.5.8'

下载PHP5.6.27包,上传到虚拟机

[root@php ~]# ls
anaconda-ks.cfg  libmcrypt-2.5.8  libmcrypt-2.5.8.tar.gz  php-5.6.27  php-5.6.27.tar.gz
[root@php ~]# tar zxvf php-5.6.27.tar.gz 
[root@php php-5.6.27]# cd php-5.6.27
[root@php php-5.6.27]# ./configure --prefix=/usr/local/php5.6 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-fpm --enable-sockets --enable-sysvshm --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --with-mhash --with-mcrypt=/usr/local/libmcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
[root@php php-5.6.27]# make && make install

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

Installing shared extensions:     /usr/local/php5.6/lib/php/extensions/no-debug-zts-20131226/
Installing PHP CLI binary:        /usr/local/php5.6/bin/
Installing PHP CLI man page:      /usr/local/php5.6/php/man/man1/
Installing PHP FPM binary:        /usr/local/php5.6/sbin/
Installing PHP FPM config:        /usr/local/php5.6/etc/
Installing PHP FPM man page:      /usr/local/php5.6/php/man/man8/
Installing PHP FPM status page:   /usr/local/php5.6/php/php/fpm/
Installing PHP CGI binary:        /usr/local/php5.6/bin/
Installing PHP CGI man page:      /usr/local/php5.6/php/man/man1/
Installing build environment:     /usr/local/php5.6/lib/php/build/
Installing header files:           /usr/local/php5.6/include/php/
Installing helper programs:       /usr/local/php5.6/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php5.6/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php5.6/lib/php/
[PEAR] Archive_Tar    - installed: 1.4.0
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.3.0
[PEAR] PEAR           - installed: 1.10.1
Wrote PEAR system config file at: /usr/local/php5.6/etc/pear.conf
You may want to add: /usr/local/php5.6/lib/php to your php.ini include_path
/root/php-5.6.27/build/shtool install -c ext/phar/phar.phar /usr/local/php5.6/bin
ln -s -f phar.phar /usr/local/php5.6/bin/phar
Installing PDO headers:           /usr/local/php5.6/include/php/ext/pdo/


[root@php php-5.6.27]# groupadd -g 1001 nginx
[root@php php-5.6.27]# useradd -u 900 -g nginx -s /sbin/nologin nginx
[root@php php-5.6.27]# tail -1 /etc/passwd
nginx:x:900:1001::/home/nginx:/sbin/nologin

[root@php php-5.6.27]# cp php.ini-production  /etc/php.ini
[root@php php-5.6.27]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@php php-5.6.27]# chmod +x /etc/init.d/php-fpm
添加PHP服务到启动列表,并设置开机启动
[root@php php-5.6.27]# chkconfig  --add php-fpm
[root@php php-5.6.27]# chkconfig  php-fpm on

配置PHP环境

[root@php php-5.6.27]# cp /usr/local/php5.6/etc/php-fpm.conf.default  /usr/local/php5.6/etc/php-fpm.conf
[root@php php-5.6.27]# vim /usr/local/php5.6/etc/php-fpm.conf
 pid = run/php-fpm.pid
149 user = nginx
150 group = nginx
164 listen = 172.16.0.12:9000
235 pm.max_children = 50
240 pm.start_servers = 5
245 pm.min_spare_servers = 5
250 pm.max_spare_servers = 35
[root@php php-5.6.27]# systemctl  start php-fpm

9000端口已经启动,说明php环境安装完成
[root@php php-5.6.27]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      31230/php-fpm: mast 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1382/sshd           

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值