LNMPPHP軟體安裝步驟

技術小甜發表於2017-11-07
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
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 !
";           }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上的資料庫連線引數信





















本文轉自淺景塵51CTO部落格,原文連結:http://blog.51cto.com/857803451/1931501 ,如需轉載請自行聯絡原作者



相關文章