首页 > 代码库 > LNMP PHP软件安装步骤

LNMP PHP软件安装步骤

1.1.1 解决PHP软件的依赖关系 安装基本的依赖包
yum install zlib-devellibxml2-devel libjpeg-devellibjpeg-turbo-devel libiconv-devel -y
yum install freetype-devellibpng-devel gd-devel libcurl-devel libxslt-devel libxslt-devel -y
rpm -qa z
lib-devel libxml2-devel libjpeg-devellibjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devellibcurl-devel libxslt-devel   防报错,所以编译安装
libiconv软件安装
mkdir -p /home/oldboy/tools
[root@web02 init.d]# cd /home/oldboy/tools/[root@web02 tools]# lltotal 338200drwxr-xr-x 22 root   root           4096 May 22 11:17 libiconv-1.14-rw-r--r-- 1 root   root        4984397 May 22 08:38 libiconv-1.14.tar.gz
#wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz  下载软件
[root@web02 tools]# tar xf libiconv-1.14.tar.gz
[root@web02 tools]# cd libiconv-1.14[root@web02 libiconv-1.14]# ./configure --prefix=/usr/local/libiconv[root@web02 libiconv-1.14]# make[root@web02 libiconv-1.14]# make install
[root@web02 libiconv-1.14]# cd ../[root@web02 tools]# #wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
[root@web02 tools]# yum -y install libmcrypt-devel mhash mcrypt[root@web02 tools]# rpm -qa libmcrypt-devel mhash mcryptmhash-0.9.9.9-3.el6.x86_64libmcrypt-devel-2.5.8-9.el6.x86_64mcrypt-2.6.8-10.el6.x86_64
1.1.2 下载解压PHP软件
[root@web02 tools]# tar xf php-5.5.32.tar.gz
[root@web02 tools]# cd php-5.5.32
[root@web02 tools]# ./configure --prefix=/application/php-5.5.32 --with-mysql=/application/mysql/ --with-pdo-mysql=mysqlnd --with-iconv-dir=/usr/local/libiconv --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-soap --enable-short-tags --enable-static --with-xsl --with-fpm-user=www --with-fpm-group=www --enable-ftp --enable-opcache=no
#Generating files
       #configure: creating ./config.status
       #creating main/internal_functions.c
       #creating main/internal_functions_cli.c
       #+--------------------------------------------------------------------+
       #| License:                                                          |
       #| This software is subject to the PHP License, available in this     |
       #| distribution in the file LICENSE. By continuing this installation |
       #| process, you are bound by the terms of this license agreement.     |
       #| If you do not agree with the terms of this license, you must abort |
       #| the installation process at this point.                            |
       #+--------------------------------------------------------------------+
       #
       #Thank you for using PHP.
 出现此界面说明配置工作就没有问题了
##防报错       关键
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/
touch ext/phar/phar.phar
make               开始编译
make install            <- 创建目录,生成程序文件信息
              了解FastCGI
             
1.1.3 PHP软件程序创建软链接
 [root@web02 php-5.5.32]# ln -s /application/php-5.5.32//application/php
 
1.1.4 配置php解析文件/配置php-fpm配置文件
 [root@web02 tools]#cd /home/oldboy/tools/php-5.5.32
 [root@web02 tools]# cp php.ini-production/application/php/lib/php.ini
开发的php.ini-production与php.ini-development生产的 文件区别关系对比
扩展:文件比较命令 diff zdiff vimdiff windows上的文件比较
  cd /application/php/etc/
  cp php-fpm.conf.default php-fpm.conf
             
1.1.5 启动php-fpm程序
[root@web02 php-5.5.32]# /application/php/sbin/php-fpm
[root@web02 php-5.5.32]# lsof -i:9000     <--- 确认php 9000端口是否正确启动COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAMEphp-fpm 11515 root    7u IPv4 205849      0t0  TCP localhost:cslistener (LISTEN)php-fpm 11517  www   0u  IPv4 205849      0t0 TCP localhost:cslistener (LISTEN)php-fpm 11910  www   0u  IPv4 205849      0t0 TCP localhost:cslistener (LISTEN)php-fpm 11912  www   0u  IPv4 205849      0t0 TCP localhost:cslistener (LISTEN)[root@web02 php-5.5.32]# ps -ef|grep php-fpmroot     11515      1  0 05:45 ?        00:00:01 php-fpm:master process (/application/php-5.5.32/etc/php-fpm.conf)www      11517  11515  0 05:45 ?        00:00:17 php-fpm:pool www            www      11910  11515  0 07:05 ?        00:00:16 php-fpm:pool www            www      11912  11515  0 07:05 ?        00:00:17 php-fpm:pool www            root     23687  23564  0 15:24 pts/0    00:00:00 grep --color=auto php-fpm
1.1.6 wordpress博客站点部署配置
    1) 修改nginx配置文件,使nginx程序与php程序建立联系
[root@web02 oldboy]# cd /application/nginx/conf/extra/
[root@web02 extra]# vim blog.conf  server {       listen       80;       server_name  blog.etiantian.org;       # 静态请求处理的location       location / {           root   html/blog;           index index.php index.html index.htm;       }   <-- 需要注意编辑修改默认首页文件       # 动态请求处理的location       location ~* .*\.(php|php5)?$ {           root html/blog;           fastcgi_pass  127.0.0.1:9000;           fastcgi_index index.php;           include fastcgi.conf;       }    }
说明:利用nginx的location区块实现动态请求与静态请求的分别处理
             
    2) 编辑nginx与php连通性测试文件,并进行测试
       echo ‘<?phpphpinfo(); ?>‘    >/application/nginx/html/blog/test_info.php
       测试站点
       curl http://blog.etiantian.org/index.html            <-- 静态请求站点文件信息测试    
       curl http://blog.etiantian.org/test_info.php         <-- 动态请求站点文件信息测试
       说明:当php服务停止时,9000端口信息消失,即停止PHP错误报502错误
              linux系统测试完毕后,建议利用浏览器进行最终测试,测试效果更明显些
 
    3) 编辑php与mysql连通性测试文件,并进行测试
           a. 创建数据库
[root@web02 ~]# /etc/init.d/mysqld startStarting MySQL.. SUCCESS!
[root@web02 ~]# mysql -uroot -poldboy123Warning: Using a password on the commandline interface can be insecure.Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.6.34 MySQL CommunityServer (GPL)Copyright (c) 2000, 2016, Oracle and/or itsaffiliates. All rights reserved.Oracle is a registered trademark of OracleCorporation and/or itsaffiliates. Other names may be trademarksof their respectiveowners.Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ toclear the current input statement.mysql> show databases;  查看当前数据库信息
mysql> create database wordpress;  创建数据库
 
                   
              b. 添加用户信息            
mysql> grant all on wordpress.* to‘wordpress‘@‘localhost‘ identified by ‘oldboy123‘; mysql> grantall on wordpress.* to ‘wordpress‘@‘172.16.1.0/255.255.255.0‘ identified by‘oldboy123‘;mysql> flush privileges;
 
 
 
#drop userwordpress@‘172.16.1.8‘;    <--- 删除用户信息
#select user,host frommysql.user;    <--- 查看用户信息
#mysql -uwordpress -poldboy123          <--- 测试创建的用户连接
#show databases;                    <--- 查看当前数据库信息
              c. 测试php与数据库连通性
[root@web02 /]# cd /application/nginx/html/blog/
[root@web02 blog]# vim test_mysql.php<?php//$link_id=mysql_connect(‘主机名‘,‘用户‘,‘密码‘);//mysql -u用户 -p密码 -h 主机$link_id=mysql_connect(‘localhost‘,‘wordpress‘,‘oldboy123‘)ormysql_error();if($link_id){            echo "mysql successful by oldboy !\n";           }else{            echomysql_error();           }?>[root@web02 blog]# curl blog.etiantian.org/test_mysql.phpmysql successful by oldboy !   <--测试php与数据库的连通性
 
 
    4) 下载部署wordpress博客程序(https://cn.wordpress.org/   英文官网:https://www.wordpress.org/  )      
[root@web02 tools]# wgethttps://cn.wordpress.org/wordpress-4.5.1-zh_CN.tar.gz[root@web02 tools]# tar xf wordpress-4.5.1-zh_CN.tar.gz [root@web02 tools]# mv wordpress/* /application/nginx/html/blog/[root@web02 tools]# chown -R www.www/application/nginx/html/blog/
[root@web02 tools]# cd /application/nginx/html/blog[root@web02 blog]# lltotal 204-rw-r--r-- 1 www www    19 May 21 15:46index.html-rw-r--r-- 1 www www   418 May 22 12:49 index.php-rw-r--r-- 1 www www 19935 Jan  3 02:51license.txt-rw-r--r-- 1 www www  7433 May 23 09:04readme.html-rw-r--r-- 1 www www    20 May 22 12:56test_info.php-rw-r--r-- 1 www www   313 May 22 12:54test_mysql.php
              注意:确认hosts文件进行了解析
              浏览器页面进行wordpress部署       
              vim wp-config.php  可以修改wordpress上的数据库连接参数信



本文出自 “浅景尘” 博客,请务必保留此出处http://857803451.blog.51cto.com/12777961/1931501

LNMP PHP软件安装步骤