LAMP:組合應用
httpd2.4:yum install httpd.2.4
php-fpm:yum install php-fpm php-mysql
mysql: yum install mysql
注意:在做實驗時,一定要將iptables和selinux給關了。
http:只需在httpd上寫一個必須的文件/etc/httpd/conf.d/fcgic.conf,也可以寫在虛擬主機的配置文件中
vim /etc/httpd/conf.d/fcgic.conf
DirectoryIndex index.php //php主頁
proxyrequests off //關閉正向解析
proxypassmatch ^(..php)$ fcgi://172.16.252.208:9000/phpp/$1 //匹配模式,一但匹配到后綴為.php結尾的請求,都將發往172.16.252.208:9000這個地址去做動態處理。
httpd-2.4:rpm包默認編譯支持了fcgi模塊;
php-fpm包:專用于將php運行于fpm模式;
php-fpm:(類似于prefork模型)
最重要的配置文件:/etc/php-fpm.d/www.ini
[www] 就是用來配置怎么和我們的服務結合的
vim /etc/php.fpm.d/www.conf
listen = 127.0.0.1:9000 //監聽的地址和端口,mysql,php不在一個主機上要換ip地址
listen.backlog = -1 //后援隊列,如果我們的服務器最多支持50個并發,一下子來了70個,定義下最多排除排多長,-1表示無限制
listen.allowed_clients = 127.0.0.1 //允許來自哪些客戶端的ip來訪問,這是一個授權連接
pm.statu_path = /status //可以為了不和httpd的沖突,可以改名字,pmstatus
ping.path = /ping //檢測fpm是否工作正常的
ping.response = pong
session 會話的目錄還沒創建,mkdir /var/lib/php/session/ -pv,chown apache.apache /var/lib/php/session/
在/etc/httpd/conf.d/下添加fcgi.conf配置文件,最重要的就是以下三條命令:
DirectoryIndex index.php //默認主頁
ProxyRequest off //關閉正向解析
ProxyPassMatch ^/(..php)$ fcgi://127.0.0.1:9000/var/www/html/$1 //匹配.php文件,并且fcgi監聽的端口,如果fcgi是在單獨的一臺服務器上的話,那就監聽在對應的端口上了
連接池:
pm = static|dynamic
static:固定數量的子進程;pm.max_children;
dynamic:子進程數據以動態模式管理;
pm.start_servers
pm.min_spare_servers
pm.max_spare_servers
pm.max_requests = 500
創建session目錄,并確保運行php-fpm進程的用戶對此目錄有讀寫權限;(為了記錄用戶的狀態,以保證下次用戶的訪問)
mkdir /var/lib/php/session
chown apache.apache /var/lib/php/session
創建php文件存放位置,要和httpd服務器中定義的一致(proxypassmatch):
mkdir /phpp
vim /phpp/index.php
1、(測試php是否有工作)
<?php
phpinfo();
?>
2、(測試php連接mysql)
<?php
$conn=mysql_connect(‘172.16.252.120′,’baoma’,’baoma’);
if($conn)
echo “Success”;
else
echo “Failure”;
?>
接下來就可以啟動服務了:systemctl start php-fpm.service
systemctl restart httpd.service
mysql:
只需要:GRANT ALL ON . TO jeep@’%’ IDENTIFIED BY ‘jeep’;
FLUSH PRIVILEGES;
//在安裝應用時,因為我這是三個主機,每個主機都對應一個服務,所以php-admin和wordpress在httpd服務上要有一個,在php-fpm上也要有一個,要不然你在瀏覽器中輸入時,他會在httpd上查找,會出現找不到的情況。
安裝php-admin:
ln -sv php-admin pma //只是為了更方便的在瀏覽器中輸出面添加的鏈接
mv config.sample.inc.php config.inc.php
vim config.inc.php
$cfg[‘blowfish_secret’] = ‘a8b7c6d’; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */ //如果認證方法設置為cookie,就需要設置短語密碼,置于設置什么密碼,由您決定,但是不能留空,否則會在登錄phpadmin時提示錯誤
$cfg[‘Servers’][$i][‘host’] = ‘172.16.252.120’; //mysql的主機地址,如果是本機最好寫ip地址
安裝word-press:
vim wordpress/wp-config.php
define(‘DB_NAME’, ‘wp’);
/** MySQL數據庫用戶名 /
define(‘DB_USER’, ‘jeep’);
/** MySQL數據庫密碼 */
define(‘DB_PASSWORD’, ‘jeep’);
/** MySQL主機 */
define(‘DB_HOST’, ‘172.16.252.120’);
/** 創建數據表時默認的文字編碼 */
define(‘DB_CHARSET’, ‘utf8’);
/** 數據庫整理類型。如不確定請勿更改 */
define(‘DB_COLLATE’, ”);
在數據庫上操作,創建一個jeep只有對wp數據庫有操作權限,和創建wp數據庫:
GRANT ALL ON wp. TO jeep@’%’ IDENTIFIED BY ‘jeep’;
CREATE DATABASES wp;
接下來的是httpd的虛擬文件的配置圖:
原創文章,作者:dance_man,如若轉載,請注明出處:http://www.www58058.com/77663