前言:
我們都知道Apache作爲一款出色的web服務器佔據了市場大半個江山,他的地位目前還無人能取代,但是除了Apache,,在web服務器軟件行列,Nginx以其性能穩定、功能豐富、運維簡單、處理靜靜態文件速度快且消耗系統資源極少的優勢,也同樣贏得了許多人的青睞。
下面讓我們能來了解一下linux下Nginx+mysql+php的源碼安裝方法。
準備工具:
mysql-5.5.15-linux2.6-i686.tar.gz
nginx-1.0.11.tar.gz
pcre-devel-6.6-2.el5_1.7.i386.rpm
libevent-2.0.16-stable.tar.gz
php-5.4.3.tar.gz
xcache-2.0.1.tar.gz
一.安裝mysql(二進制)
這裏爲了節省時間,mysql採用二進制方式安裝,源代碼安裝前面在LAMP環境搭建的時候已經介紹過,若有需要,請參見LAMP環境搭建
[root@lly ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local/
[root@lly ~]# cd /usr/local/
[root@lly local]#ll
生成的mysql-5.5。。。。。的目錄名字比較長,操作的時候不容易記住,我們可以給他改個名,或者做個鏈接。這裏做個鏈接把
[root@lly local]# ln -s mysql-5.5.15-linux2.6-i686 mysql
[root@lly local]# cd mysql這樣就能直接進入mysql目錄了
[root@lly mysql]# less INSTALL-BINARY 查看mysql的二進制安裝步驟
[root@lly ~]# groupadd -r mysql 創建組
[root@lly ~]# useradd -r -g mysql mysql -M 創建帳號-M表示不創建家目錄
[root@lly ~]# cd /usr/local/mysql
[root@lly mysql]# chown -R mysql . 把當前目錄下所有對象所有者改爲mysql
[root@lly mysql]# chgrp -R mysql . 把當前目錄下所有對象所有組改爲mysql
[root@lly mysql]# scripts/mysql_install_db --user=mysql 初始化
[root@lly mysql]# chown -R root .
[root@lly mysql]# chown -R mysql data 除了data目錄其他的目錄所有者都改爲管理員
[root@lly mysql]# cp support-files/my-medium.cnf /etc/my.cnf 把support-file下的mysql配置文件拷貝到etc目錄下改名爲my.cnf
[root@lly mysql]# cp support-files/mysql.server /etc/init.d/mysqld 生成mysql服務的控制文件
[root@lly mysql]# chmod a+x /etc/init.d/mysqld
[root@lly mysql]# chkconfig --add mysqld
[root@lly mysql]# chkconfig --list |grep mysql
[root@lly mysql]# service mysqld start 啓動mysql服務
[root@lly mysql]# netstat -tupln |grep 3306 查看端口是否啓動
[root@lly mysql]#/usr/local/mysql/bin
[root@lly bin]# vim /etc/profile 把mysql服務加入到變量裏去,以方便我們日後的訪問
添加路徑
[root@lly bin]# . /etc/profile 執行
[root@lly bin]# mysql 輸入mysql即可訪問
[root@lly bin]# mysqladmin -u root -p password '123' 創建一個管理員的口令
[root@lly bin]# cd ..
[root@lly mysql]# vim /etc/ld.so.conf.d/mysql.conf
把mysql的庫文件寫入環境
[root@lly mysql]# ldconfig 刷新
[root@lly mysql]# ldconfig -pv |grep mysql 查看是否導入
[root@lly mysql]# ln -s include /usr/include/mysql 對mysql的頭文件做一個連接
Mysql配置完成
二.安裝nginx
安裝nginx之前要安裝pcre(兼容的正則表達式庫)和lievent
1。安裝pcre(這裏借用光盤中的軟件包進行安裝)
[root@lly ~]# mount /dev/cdrom /mnt/cdrom 掛載光驅
[root@lly ~]# cd /mnt/cdrom/Server/
[root@lly Server]# rpm -ivh pcre-devel-6.6-2.el5_1.7.i386.rpm 安裝pcre的rpm包
2。安裝libevent
[root@lly Server]#cd
[root@lly ~]# tar -zxvf libevent-2.0.16-stable.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/libevent-2.0.16-stable/
[root@lly libevent-2.0.16-stable]# ./configure --prefix=/usr/local/libevent 指明安裝路徑
[root@lly libevent-2.0.16-stable]# make
[root@lly libevent-2.0.16-stable]# make install
[root@lly libevent-2.0.16-stable]# cd /usr/local/libevent/
[root@lly libevent]# vim /etc/ld.so.conf.d/libevent.conf
把庫文件寫入
[root@lly libevent]# ldconfig 刷新
[root@lly libevent]# ldconfig -pv |grep libevent
[root@lly libevent]# ln -s /usr/local/libevent/include/ /usr/include/libevent 對其頭文件做一個鏈接
安裝nginx
[root@lly libevent]# cd
[root@lly ~]# tar -zxvf nginx-1.0.11.tar.gz -C /usr/local/src/
Nginx是以進程方式運行的,需要創建賬號。
[root@lly nginx-1.0.11]# groupadd -r nginx
[root@lly nginx-1.0.11]# useradd -s /sbin/nologin -M -r -g nginx nginx 創建帳號
[root@lly nginx-1.0.11]#./configure \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/tmp/nginx/client/ \
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
--with-pcre
[root@lly nginx-1.0.11]# make
[root@lly nginx-1.0.11]# make install
[root@lly nginx-1.0.11]# cd /etc/nginx/
[root@lly nginx]# ll /usr/local/nginx/
給nginx編寫一個控制腳本
[root@lly nginx]# ll /usr/local/nginx/sbin/
[root@lly ~]#vim /etc/init.d/nginx
[root@lly ~]# chmod a+x /etc/init.d/nginx
[root@lly ~]# chkconfig --add nginx
[root@lly ~]# chkconfig --list |grep nginx
[root@lly ~]# service nginx start 啓動nginx
[root@lly ~]# netstat -tupln |grep 80 查看nginx的80端口是否啓動
瀏覽器輸入http://192.168.126.129/測試
三.安裝php
[root@lly ~]# tar -zxvf php-5.4.3.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/php-5.4.3/
[root@lly php-5.4.3]# ./configure --prefix=/usr/local/php --enable-fpm --enable-sockets --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --enable-xml --with-png-dir --with-png --with-jpeg-dir --with-zlib --with-freetype-dir --with-config-file-path=/etc/php --with-config-file-scan-dir=/etc/php5.d
[root@lly php-5.4.3]# make
[root@lly php-5.4.3]# make install
[root@lly php-5.4.3]# mkdir /etc/php /etc/php5.d
[root@lly php-5.4.3]# cp php.ini-production /etc/php
[root@lly php-5.4.3]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@lly php-5.4.3]# chmod a+x /etc/init.d/php-fpm 爲控制腳本添加權限
[root@lly php-5.4.3]# cd /usr/local/php/etc/
[root@lly etc]# cp php-fpm.conf.default php-fpm.conf 生成php-fpm配置文件
[root@lly etc]# chkconfig --add php-fpm
[root@lly etc]# chkconfig --list |grep fpm
[root@lly etc]# service php-fpm start
[root@lly etc]# netstat -tupln |grep php-fpm
此時要想nginx能夠完成php的頁面請求
[root@lly etc]# vim /etc/nginx/nginx.conf
寫清楚主頁面
做一個php的測試頁面方便測試
[root@lly etc]# cd /usr/local/nginx/html/
[root@lly html]# ll
total 16
-rw-r--r-- 1 root root 383 Apr 13 10:28 50x.html
-rw-r--r-- 1 root root 151 Apr 13 10:28 index.html
[root@lly html]# mv index.html index.php把index.html改爲index.php
[root@lly html]# vim index.php
重啓nginx和fastcgi服務
[root@lly html]# service nginx restart
[root@lly html]# service php-fpm restart
編輯測試頁測試與數據庫的連接
[root@lly html]# vim index.php
瀏覽器輸入http://192.168.126.129
說明與數據庫連接成功
四.Php加速工具xcache的安裝使用
[root@lly ~]# tar -zxvf xcache-2.0.1.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/xcache-2.0.1/
[root@lly xcache-2.0.1]# less INSTALL 查看安裝說明
需要使用phpize先生成configure文件
但是phpize在哪呢?其實 就在/usr/local/php/bin/目錄下
直接執行
[root@lly xcache-2.0.1]# /usr/local/php/bin/phpize
然後/usr/local/src/xcache-2.0.1/目錄下就生成了configure文件
安裝
[[email protected]]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
[root@lly xcache-2.0.1]# make
[root@lly xcache-2.0.1]# make install
這裏的這個目錄是xcache與php結合後形成的模塊的目錄
[root@lly xcache-2.0.1]# cp xcache.ini /etc/php5.d/說明:安裝php的時候有一個php.5文件xcache要和php很好地結合把xcache.ini文件拷過去
[root@lly xcache-2.0.1]# vim /etc/php5.d/xcache.ini
第10行和12行是windows下的配置用雙分號註釋掉
編寫測試頁
[root@lly xcache-2.0.1]# cd /usr/local/nginx/html/
[root@lly html]# vim index.php
[root@lly html]# service php-fpm restart
瀏覽器輸入http://192.168.126.129
這樣xcache和php結合成功
爲了方便xcache的管理
[root@lly html]# cd /usr/local/src/xcache-2.0.1/
這個目錄下是xcache管理的php頁面文件
[root@lly xcache-2.0.1]# cp -r admin/ /usr/local/nginx/html/把admiin下的文件拷到html目錄下
[root@lly html]# chmod a+rx admin/添加訪問查看的權限
[root@lly html]# cd admin/
[root@lly admin]# chmod a+r index.php 添加查看權限
瀏覽器輸入http://192.168.126.129/admin
輸入默認用戶名密碼admin登陸就行了
出自:http://iceblock.blog.51cto.com/6758400/1190538