搜索
熱搜: 活動 交友 discuz
查看: 7423|回復: 0
打印 上一主題 下一主題

[Linux] 【CentOS】lighttpd php mysql-LAMP 架設

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-3-7 01:09:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
【前言】

[LAMP - Wikipedia] 應該不用多說了吧,不過本次實作 Web Server 不是使用 Apache,而是使用小而輕巧的 Lighttpd-輕量級 Web Server,不知是不是應該改叫 LLMP (Linux Lighttpd MySQL PHP) :p

【作業環境】

CentOS 5.1 (Linux 2.6.18-53.1.4.el5)

mysql-server-5.0.22-2.2.el5_1.1

lighttpd-1.4.18-1.el5.rf

php-5.1.6-15.el5

php-mysql-5.1.6-15.el5

【安裝及設定】

MySQL

Step1.安裝 MySQL Database

我使用郡組安裝把相關會用到的套件都裝入,在安裝以前先查看會安裝哪些套件

  1. #yum groupinfo "MySQL Database"            //查尋 MySQL 郡組套件會安裝哪些套件
  2. Group: MySQL Database
  3.   Description: This package group contains packages useful for use with MySQL.
  4.   Mandatory Packages:                       //強制安裝套件
  5.     mysql
  6.   Default Packages:                         //預?#93;會安裝的套件
  7.     unixODBC
  8.     mysql-server
  9.     MySQL-python
  10.     mysql-connector-odbc
  11.     libdbi-dbd-mysql
  12.     perl-DBD-MySQL
  13.   Optional Packages:                        //建議安裝 (視個人需求自行安裝)
  14.     mod_auth_mysql
  15.     mysql-devel                             //MySQL ?#123;式?#125;發套件及函式庫
  16.     qt-MySQL
  17.     mysql-bench                             //MySQL 效能測試套件
  18.     php-mysql
複製代碼


接下來就利用 yum 來進行郡組安裝 MySQL 吧

  1. #yum groupinstall "MySQL Database"
複製代碼


你可能會問說怎麼沒有 MySQL-shared (MySQL 用戶端函式庫套件),這個套件若需要就到[MySQL Download]找對應的 MySQL 版本及需要的 rpm 來安裝吧。

Step2.修改 /etc/my.cnf

我想將 DB 放置資料夾從預設的 /var/lib/mysql 改放到 /home/db/mysql 下,我喜歡集中管理 :p

  1. #mkdir /home/db ; mkdir /home/db/mysql
  2. #chown mysql:mysql /home/db/mysql
  3. #vim /etc/my.cnf
  4. [mysqld]
  5. datadir=/var/lib/mysql                //預?#93;值
  6. datadir=/home/db/mysql                //修改後
複製代碼


再來就是執行 chkconfig 將 mysqld 設定在 runlevel 2 ~ 5 為啟動 MySQL 服務

  1. #chkconfig mysqld on
  2. #chkconfig --list |grep mysqld        //查看?#93;定是否生效
  3. mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off
複製代碼


Step3.啟動 MySQL
  1. #/etc/rc.d/init.d/mysqld start        //啟動 MySQL 服務
  2. Initializing MySQL database:  Installing all prepared tables Fill help tables
  3. Starting MySQL:                                            [  OK  ]
複製代碼


檢查 MySQL 是否啟動成功並 Listen 相關 Port

  1. #netstat -tnl
  2. Active Internet connections (only servers)
  3. Proto Recv-Q Send-Q Local Address               Foreign Address             State
  4. tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN
複製代碼


Step4.設定 MySQL 管理者密碼

剛安裝完 MySQL 後記得趕快設定管理者密碼 (這裡的 root 跟 CentOS 的 SuperUser Root 沒關系哦!!)

  1. #mysqladmin -u root password YOUR_PASSWORD     //?#93;定新密碼
  2. #mysqladmin -u root -p password NEW_PASSWORD   //日後若要更改密碼
複製代碼


Step5.測試登入 MySQL

設定好 MySQL 管理者密碼後試著登入看看吧:p

  1. #mysql -u root -p
  2. Enter password:                                //輸入剛才?#93;定的 MySQL 密碼
  3. Welcome to the MySQL monitor.  Commands end with ; or \g.
  4. Your MySQL connection id is 1581 to server version: 5.0.27
  5. Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
  6. mysql>                                         //成功登入 mysql
複製代碼


Step6.建立其它 MySQL 帳號

以下命令為表示允許連線主機來源是 localhost 以 sqluser1 的 MySQL 帳號及密碼為 1234 登入的使用者,能對指定的資料庫 testdb 擁有所有權限。

  1. mysql> grant all privileges on testdb.* to sqluser1@localhost IDENTIFIED BY '1234';
  2. Query OK, 0 rows affected (0.00 sec)
  3. mysql> FLUSH PRIVILEGES ;             //重新載入(使變更生效)
  4. Query OK, 0 rows affected (0.01 sec)
複製代碼


Lighttpd

Step1.安裝 lighttpd、lighttpd-fastcgi 套件

因為 Lighttpd 使用 FastCGI 來處理 PHP 所以要一併安裝

  1. #yum -y install lighttpd lighttpd-fastcgi
複製代碼


Step2.修改 lighttpd 設定檔

修改 lighttpd 設定檔來支援 PHP (FastCGI)

  1. #vim /etc/lighttpd/lighttpd.conf
  2. server.modules = (
  3.                    "mod_fastcgi",   //這行的 mark 要拿掉(支援 PHP-FastCGI)
  4.                   )
  5. #### fastcgi module
  6. ## read fastcgi.txt for more info
  7. ## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini
  8. fastcgi.server             = ( ".php" =>
  9.                                ( "localhost" =>
  10.                                  (
  11.                                    "socket" => "/var/run/lighttpd/php-fastcgi.socket",     //預?#93;值
  12.                                    "socket" => "/tmp/php-fastcgi.socket",                  //修改後
  13.                                    "bin-path" => "/usr/bin/php-cgi"
  14.                                  )
  15.                                )
  16.                               )
複製代碼


Step3.設定開機自動啟動 lighttpd 服務

使用 chkconfig 指令來查看 lighttpd 在各 runlevel 下狀態


  1. #chkconfig --list |grep lighttpd
  2. lighttpd        0:off   1:off   2:off   3:off   4:off   5:off   6:off  
複製代碼


設定 lighttpd 在 runlevel 為 2、3、5 時會啟動服務

  1. #chkconfig --levels 235 lighttpd on      
複製代碼


檢查剛才的設定是否生效

  1. #chkconfig --list |grep lighttpd
  2. lighttpd        0:off   1:off   2:on    3:on    4:off   5:on    6:off  
複製代碼


Step4.啟動 lighttpd 服務

  1. #/etc/rc.d/init.d/lighttpd start
  2. Starting lighttpd:                                         [  OK  ]  
複製代碼


檢查一下 lighttpd process 是否執行
  1. #ps ax |grep lighttpd
  2. 4266 ?        S      0:00 /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf
複製代碼


檢查是否 LISTEN Port 80
  1. #netstat -tnl |grep :80
  2. tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN
複製代碼


PHP

Step1.安裝 PHP 5

安裝 php 及 php-mysql 套件

  1. #yum -y install php php-mysql
複製代碼



Step2.查尋安裝 PHP 是否成功

查看安裝的 PHP 版本

  1. #php -v
  2. PHP 5.1.6 (cli) (built: Sep 20 2007 10:16:10)
  3. Copyright (c) 1997-2006 The PHP Group
  4. Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
複製代碼


查看目前 PHP 模組
  1. #php -m
  2. [PHP Modules]
  3. bz2
  4. ...略
  5. xml
  6. zlib
  7. [Zend Modules]
複製代碼


Step3.測試 Lighttpd 能否正確處理 php 檔案

隨意建立一個檔名為 test.php 的檔案,然後放到 lighttpd 的 web 目錄而 test.php 內容如下如果能看到 php 的預設頁就表示 lighttpd 能正確處理 php 檔案了

  1. phpinfo>  
複製代碼



【參考】

[學生用伺服器建置流程(CentOS 5 版)PHP & MySQL]

[台灣PHP聯盟 - 在 RHEL 修改 mysql 放置資料的路徑]

[Jamyy's Weblog: 架設自己的即時訊息伺服器 - 使用 jabberd 2]

【Log】

初稿-2008/01/16
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

本論壇為非營利之網路平台,所有文章內容均為網友自行發表,不代表論壇立場!若涉及侵權、違法等情事,請告知版主處理。


Page Rank Check

廣告刊登  |   交換連結  |   贊助我們  |   服務條款  |   免責聲明  |   客服中心  |   中央分站

手機版|中央論壇

GMT+8, 2026-5-26 11:40 , Processed in 0.046578 second(s), 16 queries .

Powered by Discuz!

© 2005-2015 Copyrights. Set by YIDAS

快速回復 返回頂部 返回列表