nginx1.02+php+piwik+centos5.4構建網站統計系統
我的新浪微博:http://weibo.com/freshairbrucewoo。
歡迎大家相互交流,共同提高技術。
構建piwik網站統計系統
- 構建環境
操作系統:centos5.4(不能連接外網)
Web服務器:nginx1.0.2
數據庫:mysql
開源軟件包:piwik
運行環境:PHP腳本
- 構建步驟
(1) 安裝nginx1.0.2
a) 下載nginx1.0.2的源代碼并解壓
b) 進入解壓后源代碼用./configure配置
c) make和make install編譯安裝
d) 配置nginx.conf文件并運行nginx,打開網站測試:localhost:8080
具體執行腳本如下:
#tar zxvf nginx-1.0.2.tar.gz
#cd nginx-1.0.2
#./configure --prefix=/home/piwik/nginx //此處在本環節只需指定一個路徑
#make && make install
#/home/piwik/nginx/sbin/nginx //啟Nginx
(2) 安裝PHP
1) 安裝libpng
#tar xvf libpng-1.2.10.tar.tar
#cd libpng-1.2.10
#./configure --prefix=/usr/local/png
#make;make install
#ln -s /usr/local/png/lib/* /usr/lib/
2) 安裝jpeg
#mkdir /usr/local/jpeg
#mkdir /usr/local/jpeg/bin
#mkdir /usr/local/jpeg/lib
#mkdir /usr/local/jpeg/include
#mkdir /usr/local/jpeg/man
#mkdir /usr/local/jpeg/man/man1
#tar xvf jpegsrc.v7.tar.tar
#cd jpeg-7
#./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
#make;make install
#ln -s /usr/local/jpeg/lib/* /usr/lib/
3) 安裝 freetype
#tar xvf freetype-2.3.9.tar.tar
#cd freetype-2.3.9
#./configure --prefix=/usr/local/freetype
#make;make install
4) 安裝fontconfig
#tar zxvf fontconfig-2.4.2.tar.gz
#cd fontconfig-2.4.2
#./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype/bin/freetype-config
#make;make install
5) 安裝GD
#tar zxvf gd-2.0.32.tar.gz
#cd gd-2.0.32
#./configure --prefix=/usr/local/gd --with-png=/usr/local/png --with-jpeg=/usr/local/jpeg --with- freetype=/usr/local/freetype --with-fontconfig=/usr/local/fontconfig
#cp /usr/local/png/include/png.h ./
#cp /usr/local/png/include/pngconf.h ./
#make;make install
6) 安裝PHP
首先我們把PHP和PHP-FPM下載到同一目錄下,此次用的為php-5.3.0.tar.bz2和php-5.3.0-fpm-0.5.12.diff.gz,下載到了同一目錄下
#tar xvf php-5.3.0.tar.bz2
#gzip -cd php-5.3.0-fpm-0.5.12.diff.gz | patch -d php-5.3.0 -p1
//將php-5.3.0-fpm-0.5.12.diff.gz以補丁形式加到php-5.3.0里面
#cd php-5.3.0
#./configure --prefix=/usr/local/php --with-gd=/usr/local/gd --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/png --with-freetype-dir=/usr/local/freetype --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm
注:Nginx+PHP整合,在安裝時必須啟用--enable-fastcgi和 --enable-fpm.
#make
#make install
#cp php.ini-dist /usr/local/php/etc/php.ini
(3) 整合nginx和php
為了使nginx能夠支持php,需要修改配置文件。
1) 修改nginx.conf文件,去掉支持php配置的注釋;
2) 修改PHP配置文件php-fpm.conf使監聽的端口號與nginx里面的一致。
3) 運行一個PHP測試頁面
(4) 安裝部署piwik
具體的安裝部署過程piwik有詳細的文檔,按照步驟安裝即可,這個過程中可能有錯誤,但是一般都有提示怎么解決。
在安裝過程中有一個步驟會生成統計的js代碼,需要把這段代碼加入到需要被統計的頁面中,測試通過。
3.注意事項
(1)在配置nginx的時候,完了防止端口沖突把端口號改為8080了,訪問的時候需要帶上端口號。
(2)默認PHP監控端口是9000,可是在系統上被別的應用程序占用,所以也需要改端口號,改成了9088.需要注意在PHP配置文件和nginx配置文件都需要修改。
(3)piwik統計的每一個網頁中都需要加入生成js代碼,具體加入位置,在安裝piwik的時候有提示。
(4)如果是用root用戶啟動nginx,所以的外部訪問時被禁止的,403錯誤;同樣PHP啟動如果用root用戶啟動也會這種情況。
4. 解決困難與收獲經驗
(1)因為安裝部署的centos服務器沒有外網,而且是通過運程安裝,在這個過程中遇到很多困難。例如需要的所有軟件通過本地機器下載,然后上傳到服務器(通過公司內網)。因為不是通過在線安裝,可能導致不兼容。
(2)在采用編譯安裝的開發包或是軟件時,編譯配置或編譯時,會遇到很多沒有安裝的庫,這個時候需要根據錯誤提示找到缺少的軟件包并下載安裝之。
(3)在啟動nginx或PHP時,如果用root啟動會導致外部訪問不了,如果用普通用戶啟動可能會失敗,這個時候失敗沒有什么錯誤提示,需要去查看日志,里面有詳細的錯誤記錄。
浙公網安備 33010602011771號