Lamp(fastcgi)環境的搭建

FastCGI像是一個常駐(long-live)型的CGI,它可以一直執行着,只要激活後,不會每次都要花費時間去fork一次(這是CGI最爲人詬病的fork-and-execute 模式)。它還支持分佈式的運算即 FastCGI 程序可以在網站服務器以外的主機上執行並且接受來自其它網站服務器來的請求。

mysql源碼

然後解壓進行安裝

在之前先建個mysql賬號mysql組(有了則不需要建立)

[root@wang ~]# groupadd mysql

[root@wang ~]# useradd -r -g mysql mysql

[root@wang ~]# rpm -qa |grep mysql  查看之前安裝 與mysql想關的包,刪除

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media remove mysql-libs   軟件包移除

[root@wang ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local  進行解壓

[root@wang ~]# cd /usr/local/src

cmake ./ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci   進行編譯

  make && make install  編譯安裝

[root@wang local]# ln -s mysql-5.5.15-linux2.6-i686/ mysql  做個鏈接

[root@wang local]# cd mysql

[root@wang mysql]# vim INSTALL-BINARY  可以查看幫助文件進行安裝

shell> groupadd mysql 

shell> useradd -r -g mysql mysql 

shell> cd /usr/local 

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz 

shell> ln -s full-path-to-mysql-VERSION-OS mysql 

shell> cd mysql 

shell> chown -R mysql . 

shell> chgrp -R mysql . 

shell> scripts/mysql_install_db --user=mysql 

shell> chown -R root . 

[root@wang mysql]# chown -R mysql:mysql .  改變當前目錄所有者與所有組爲mysql

[root@wang mysql]# ./scripts/mysql_install_db --user=mysql  進行安裝

7CCC58A12C2745B9B00D706D48388E37如果出現這樣的錯誤就需要安裝libaio

[root@wang mysql]# yum --disablerepo=\* --enablerepo=c6-media install libaio libaio-devel -y  進行安裝

[root@wang mysql]# ./scripts/mysql_install_db --user=mysql  重新安裝

[root@wang mysql]# cd data/

[root@wang data]# ll mysql/  查看mysql目錄下是否有數據,有數據的話表明安裝成功

[root@wang data]# cd ..   進入mysql目錄

[root@wang mysql]# chown -R root .  改變當前所有用戶爲管理員

[root@wang mysql]# chown -R mysql data/   將data用戶改爲mysql

[root@wang mysql]# cp my.cnf /etc  copy文件到my.cnf

[root@wang mysql]# cd support-files/

[root@wang support-files]# cp -p mysql.server /etc/init.d/mysqld    複製mysql文件到mysqld

 

[root@wang support-files]# service mysqld start  測試是否能夠啓動

[root@wang mysql]# vim /etc/profile    修改配置文件

28CE843B7FF140D9A582652418B04790 

PATH=$PATH:/usr/local/mysql/bin  添加此語句

[root@wang mysql]# . /etc/profile   重新讀取

[root@wang mysql]# mysql  進入mysql

[root@wang mysql]# mysqladmin -u root -p password '123'  設置mysql密碼

[root@wang mysql]# chkconfig --add mysql  啓動系統啓動

[root@wang mysql]# chkconfig mysqld on  

[root@wang mysql]# vim /etc/ld.so.conf.d/mysql.conf  編輯mysql配置文件

614799C1599C43A0A9A155B095DE30AA 

寫入此路徑

[root@wang mysql]# ldconfig   刷新緩存

[root@wang mysql]# ldconfig -pv |grep mysql  查看結果

E897424017CE4EF489C9095C6132CCD4 

[root@wang mysql]# cd /usr/include/  進入目錄

[root@wang include]# ln -s /usr/local/mysql/include/ mysql   做一個鏈接

[root@wang mysql]# vim /etc/man.config   處理man手冊

61D87A4C66A94E58815A67E231AA463C 

MANPATH /usr/local/mysql/man  加入即可

[root@wang mysql]# man mysql  進行測試

Mysql處理成功

然後進行apach的安裝

httpd-2.4.4.tar.bz2 

apr-1.4.6.tar.gz

apr-1.4.6.tar.gz   需要這3個軟件包

[root@wang ~]# tar -zxvf apr-1.4.6.tar.gz -C /usr/local/src/  解壓apr軟件包

[root@wang ~]# tar -zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/   解壓aprutil軟件包

[root@wang ~]# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/   解壓httpd軟件包

[root@wang ~]# cd /usr/local/src/apr-1.4.6/   進入apr目錄

[root@wang apr-1.4.6]# ./configure --prefix=/usr/local/apr   進行編譯

[root@wang apr-1.4.6]# make && make install  安裝

[root@wang apr-1.4.6]# cd ../apr-util-1.5.1/   切換到apr-util目錄

[root@wang apr-util-1.5.1]# ./configure --prefix=/usr/local/apr-utils --with-apr=/usr/local/apr/bin/apr-1-config      編譯,指定工具安裝路徑,指定apr的路徑

[root@wang apr-util-1.5.1]# make && make install  進行編譯安裝

[root@wang apr-util-1.5.1]# cd ../httpd-2.4.4/  配置httpd

./configure  \

--prefix=/usr/local/apache  \

--sysconfdir=/etc/httpd \

--enable-so \

--enable-ssl  \

--enable-rewrite  \

--with-apr=/usr/local/apr/bin/apr-1-config \

--with-apr-util=/usr/local/apr-utils/bin/apu-1-config \

--with-pcre  \

-with-z  \

--enable-mpms-shared=all      進行編譯配置

A6CA6A48037E438995D50618F8B1AD93 

出現錯誤提示,需要安裝pcre-devel包

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install pcre-devel -y  安裝包

然後再進行編譯配置

02B673B6CCC440E5A74D4302F5C695F2 

出現這個錯誤提示,需要安裝[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install openssl-devel -y

再進行編譯配置通過後

[root@wang httpd-2.4.4]# make && make install  配置安裝

完成後

[root@wang httpd-2.4.4]# cd /usr/local/apache/  進入apache目錄

[root@wang apache]# vim /etc/profile  編輯profile文件

9C34E50344CA49A3B29CF97818CC1A9C  

/usr/local/apache/bin   增加新的路徑

[root@wang apache]# . /etc/profile  進行更新

[root@wang apache]# httpd -k start  測試是否能啓動

[root@wang apache]# netstat -tupln |grep 80  查看80端口是否開啓

[root@wang apache]# vim /etc/man.config   編輯man配置文件

ED2D01FEA2544FBEA925AAB258CB5EDD  

加入MANPATH /usr/local/apache/man

[root@wang apache]# man ab   嘗試下是否生效

[root@wang apache]# cd /usr/include/  進入include目錄

[root@wang include]# ln -s /usr/local/apache/include/ apache  做個鏈接

[root@wang ~]# cd /etc/init.d/   進入目錄

[root@wang init.d]# touch httpd  創建httpd文件

[root@wang init.d]# chmod a+x httpd  加入可執行權限

[root@wang init.d]# vim httpd   進行編輯

 #!/bin/bash

  2 prog=/usr/local/apache/bin/httpd

  3 lockfile=/var/lock/subsys/httpd

  4 # description: the apache service

  5 # chkconfig: 2345 88 44

  6 start(){

  7   if [ -e $lockfile ];then

  8      echo "the apache service is started"

  9     else

 10     echo -n "the apache service is starting ...."

 11     sleep 1

 12     $prog -k start && echo "ok" && touch $lockfile || echo "failer"

 13   fi

 14 

 15 }

 16 

 17 stop(){

 18    if [ !e $lockfile ];then

 19       echo "the apache service is stopped"

 20       else

 21       echo "the apache service is stoping..."

 22       $prog -k stop && echo "ok" && rm -rf $lockfile || echo "failer"

 23    fi

 24 

 25 }

 26 

 27 

 28 case "$1" in

 29 start)

 30      start

 31      ;;

 32 stop)

 33      stop

 34      ;;

 35 restart)

 36      stop

 37      start

 38      ;;

 39 *)

 40 echo "Usage: start|stop|restart"

 41      ;;

 42 esac

添加此代碼來實現httpd啓動關閉動態效果

[root@wang init.d]# chkconfig --add httpd  加入httpd服務

[root@wang init.d]# chkconfig --list |grep httpd  查看服務啓動

 

[root@wang ~]# cd /usr/local/apache/  進入apache目錄

root@wang apache]# cd modules/

[root@wang modules]# ll |grep proxy  查看是否有與proxy相關的模塊

[root@wang modules]# vim /etc/httpd/httpd.conf  進入配置文件

7E62138A8E274B69817C4B2143A4C9DC 

打開proxy模塊和fcgi模塊

[root@wang modules]# service httpd restart   重啓httpd

Php安裝

需要安裝的包

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install libcm12-devel libjpeg-turbo-devel libpng-devel freetype-devel -y

root@wang ~]# tar -jxvf php-5.5.8.tar.bz2 -C  /usr/local/src/  解壓軟件包

[root@wang ~]# cd /usr/local/src/php-5.5.8/

[root@wang php-5.5.8]# ./configure    \

> --prefix=/usr/local/php \

> --enable-fpm   \

> --enable-sockets  \

> --with-mysql=/usr/local/mysql \

> --with-pdo-mysql=/usr/local/mysql \

> --with-mysqli=/usr/local/mysql/bin/mysql_config  \

> --enable-mbstring  \

> --enable-xml  \

> --with-png-dir \

> --with-gd   \

> --with-jpeg-dir  \

> --with-zlib  \

> --with-freetype-dir \

> --with-config-file-path=/etc/php \

> --with-config-file-scan-dir=/etc/php5.d    配置安裝

出現7214D589B7984942909DA7D7B4A829F7

需要安裝[root@wang Packages]# yum --disablerepo=\* --enablerepo=c6-media install libjpeg* -y

出現

0932D0A4B5B24197AF200D60DEA77658 

需要安裝[root@wang Packages]# yum --disablerepo=\* --enablerepo=c6-media install libpng-devel  -y

出現

7A2C723914F8497FA87A44EB694B96A0 

需要安裝 [root@wang Packages]# yum --disablerepo=\* --enablerepo=c6-media install freetype* -y

出現什麼就 rpm -qa |grep 包名  找到包安裝其devel包即可

 

接下來需要make && make isntall 因爲時間比較長,睡眠的時候可能連接斷開所以需要screen來實現安裝

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install screen -y   安裝screen

[root@wang php-5.5.8]# screen   使用screen

又打開了一個窗口  ctrl+a+d可以離開   screen -ls可以查看

恢復的話 screen -r 編號

[root@wang php-5.5.8]# make && make install  然後進行後臺配置安裝

因爲要把php座位單獨的服務器,所以需要

[root@wang php-5.5.8]# cd sapi/

[root@wang sapi]# cd fpm/

[root@wang fpm]# grep -E "start|stop|restart" *  查找哪個文件是配置文件

[root@wang fpm]# cp init.d.php-fpm /etc/init.d/php-fpm  將配置文件拷貝到php-fpm目錄

[root@wang fpm]# chmod a+x /etc/init.d/php-fpm   給予可執行權限

[root@wang fpm]# service php-fpm start   嘗試啓動下

E62C613FF00847D89335011960E04FCC 

顯示缺少配置文件

[root@wang fpm]# cd /usr/local/php/

[root@wang php]# cd etc/        進入安裝目錄

[root@wang etc]# cp php-fpm.conf.default php-fpm.conf   將默認配置文件拷貝成正式的配置文件

[root@wang etc]# service php-fpm start   再次重啓下

[root@wang etc]# netstat -tupln|grep php

tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      8885/php-fpm   

查找php-fpm進程是9000.端口說明正確安裝

[root@wang etc]# chkconfig --add php-fpm  加入指定啓動陣列

[root@wang etc]# chkconfig php-fpm on  加入開機啓動

[root@wang etc]# mkdir /etc/php /etc/php5.d   創建2個目錄

[root@wang etc]# cd /usr/local/src/php-5.5.8/ 進入php源碼目錄

[root@wang php-5.5.8]# ll |grep ini   查找是否有與ini相關的文件

[root@wang php-5.5.8]# cp php.ini-production /etc/php/php.ini 將文件拷貝到php目錄下

[root@wang php-5.5.8]# service php-fpm restart    重新啓動php-fpm

然後需要設置反向代理,將訪問返回至127.0.0.1 9000端口給php-fpm

[root@wang php-5.5.8]# vim /etc/httpd/httpd.conf   打開apach配置文檔

4FF6C7E81676471FA242A9B28EB24BFF 

添加如上信息  AddType application/x-httpd-php  .php  

AddType application/x-httpd-php-source  .phps

ProxyRequests Off      //關閉正向代理

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/apache/htdocs/$1  //請求爲php類型進行反向代理

3FE8E9D326F744EA95CBC4C38AF65183 

點名首頁爲 index.php

[root@wang php-5.5.8]# service httpd restart   重啓apache

[root@wang php-5.5.8]# cd /usr/local/apache/htdocs/  進入apache主目錄

[root@wang htdocs]# vim index.php  做個測試頁面

08314A9D44524182920E07DD614D925E 

即如此,調用phpinfo()函數

然後登陸進行測試

7F407C5463F048849BC3650F3D307EBB 

成功

查看是否能夠連接數據庫

[root@wang htdocs]# vim index.php   編輯網頁文件

F33244C24B0640C39BBB8C5FEE3DDC6D 

爲如此即可

<?php

$link=mysql_connect('127.0.0.1','root','123');

 if ($link)

 echo "ok";

 else

 echo "not"

?>

然後進行連接測試

B70AE33E51E64705A29AAE14042ACEA3 

顯示ok,能夠連接數據庫

[root@wang htdocs]# service mysqld stop  停止數據庫進行測試

1C62E4DDDA8142DF82A7003DC85C0D1C 

顯示not,無法連接數據庫,正確

然後放入php動態網頁就行測試

960566DBE4724BDE8375F663E6203962 

將這2個軟件進行解壓測試

[root@wang ~]# unzip phpwind_v9.0_gbk  解壓wind

[root@wang ~]# cd phpwind_v9.0_gbk

[root@wang phpwind_v9.0_gbk]# mv upgrade/ /usr/local/apache/htdocs/phpwind  將文件移動到apache根目錄

然後進行訪問

74D6EDC98A984F038D09D067546F7D1B 

成功訪問

9B01B6A91B884E6D8A61F1EB129E1102 

需要修改權限

[root@wang phpwind]# chmod -R o+w html/ src/ attachment/ data/ template/ windid conf/ thems/  刷新即可

BAB968AE724844E6AD3E403916C0101A 

然後設置必要的數據

可以使用,然後測試其他的頁面

[root@wang ~]# unzip phpMyAdmin-4.1.5-all-languages.zip   解壓此包

[root@wang ~]# mv phpMyAdmin-4.1.5-all-languages /usr/local/apache/htdocs/phpmyadmin  移動目錄

然後進行訪問

B23F5CE054A04207AC0D3742C341BB71 

成功訪問

然後輸入賬號密碼就能訪問數據庫了

B4D491A271FB49988FCC1350B3BE5B14 

 

 

然後進行壓力測試

[root@wang php-5.5.8]# ab -n 1000 -c 500 http://192.168.2.50/phpmyadmin

9D145354DDB34067AF85AF1E5768A03A 

806CC0A023324CF3B46B154B52332D06 

800多

再測試一下

加入緩存測試下

A86418C617C74D338762328C02756C27 

解壓xcache軟件包

[root@wang ~]# tar -zxvf xcache-3.1.0.tar.gz -C /usr/local/src/

[root@wang ~]# cd /usr/local/src/xcache-3.1.0/   進入解壓的文件

[root@wang xcache-3.1.0]# /usr/local/php/bin/phpize   用工具做成php的擴展

執行過後將出現87EDE57F6C9646EDA98BA22BFF2326FEconfigure

[root@wang xcache-3.1.0]# ./configure --help|grep -E "xcache|php"  查詢關於xcachephp的配置方法

[root@wang xcache-3.1.0]# ./configure --enable-xcache- -with-php-config=/usr/local/php/bin/php-config    進行配置

[root@wang xcache-3.1.0]# make && make install  配置安裝

[root@wang xcache-3.1.0]# cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/  進入目錄查看下模塊

[root@wang no-debug-non-zts-20121212]# ls

opcache.a  opcache.so  xcache.so    成功

[root@wang no-debug-non-zts-20121212]# cp xcache.so /etc/php5.d/  把模塊移動到php5.d目錄下

[root@wang no-debug-non-zts-20121212]# cd /usr/local/src/xcache-3.1.0/

[root@wang xcache-3.1.0]# ll |grep ini  查找ini相關的文件

[root@wang xcache-3.1.0]# cp xcache.ini /etc/php5.d/  將配置文件拷貝到此目錄下

[root@wang htdocs]# vim /etc/php5.d/xcache.ini   可以查看進行的配置

[root@wang htdocs]# service php-fpm restart   重啓php-fpm

然後瀏覽器進入網頁測試下xcache是否加載成功

442F25CC69D54BB1966C4B2C730B4B63 

由此可看出xcache.ini 被成功加載

72B9DE731E95430D8AEB030BDF9BE6DA 

Xcache搜索能搜到

緩存做成後,重新進行壓力測試

[root@wang htdocs]# ab -n 1000 -c 500 http://192.168.2.50/phpmyadmin

B824644389564DE99B94053A5869EDB9 

速度明顯提高

 

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章