lamp之源碼環境搭建
簡介:
目前網絡上流行的網站架構方式 是LAMP(linux + apache+mysql+php/perl/phthon),
即用linux作爲操作系統,apache作爲服務器,mysql作爲數據庫,php /perl/phthon作爲腳本語言,這四個軟件都是免費的或開放源碼軟件,因此使用這種方式不用花一分錢(出人公開法外)就可以建設穩定的、免費的網站系統,所以深受歡迎。
源碼安裝的好處
服務器可以使用更新的的版本
服務器性能更穩定
可以自定義參數
搭建環境:
Linux系統:rhel 5.4
Apache 的可移植運行庫apr-util-1.5.1.tar.gz
apr-1.4.6.tar.gz
Apache 服務器:採用源代碼版本是httpd-2.4.4.tar.bz2
Mysql 服務器:採用二進制版本是mysql-5.5.15-linux2.6-i686.tar.gz
Php :採用源碼版本是php-5.3.7.tar.bz2
安裝過程:
1:先安裝
Apache 的可移植運行庫
apr-1.4.6.tar.gz
apr-util-1.5.1.tar.gz
先解壓到/usr/local/src/目錄下
切換到/usr/local/src/目錄下的apr-1.4.6.tar.gz目錄下面
執行configure文件 指明安裝目錄--prefix
./configure --prefix=/usr/local/apr/
Make
Make install
在apr目錄下形成一些可執行文件頭文件庫文件存放的目錄
進入到bin目錄有形成一個工具
apr-1-config
切換到lib目錄下面,有apr的庫文件,要想讓系統調用庫文件,需要庫文件加載到緩存文件裏面緩存文件是ld.so.cache,在/etc/ld.so.conf.d目錄下面創建一個任意以.conf格式結尾的文件比如說apr.conf內容指明庫文件所在的目錄
Ldconfig 刷新緩存文件查看緩存文件有關apr的庫文件是否加載到緩存文件中
頭文件所在的目錄是 /usr/local/apr/include/ 下,但是系統找不到,系統可以找到/usr/include/目錄下的文件 /usr/local/include/目錄下的文件,所以要對include 目錄創建符號鏈接 鏈接文件是/usr/include/apr
安裝apache的另一個可移植性庫軟件apr-util,安裝過程與第一個完全相同
執行configure文件 指明安裝目錄--prefix 指明apr工具所在的目錄--with-apr
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
Make
Make install
進入到bin目錄有形成一個工具
apu-1-config
切換到lib目錄下面,有apr的庫文件,要想讓系統調用庫文件,需要庫文件加載到緩存文件裏面緩存文件是ld.so.cache,在/etc/ld.so.conf.d目錄下面創建一個任意以.conf格式結尾的文件比如說apr-util.conf內容指明庫文件所在的目錄
Ldconfig 刷新緩存文件查看緩存文件有關apr-util的庫文件是否加載到緩存文件中
頭文件所在的目錄是 /usr/local/apr/include/ 下,但是系統找不到,系統可以找到/usr/include/目錄下的文件 /usr/local/include/目錄下的文件,所以要對include 目錄創建符號鏈接 鏈接文件是/usr/include/apr-util
2:安裝apache服務器的httpd 2.4.4
先解壓 然後把解壓的目錄移動到/usr/local/src/目錄下
切換到/usr/local/src/目錄下
進入到httpd-2.4.4目錄查看文件和目錄
打開INSTALL 文件查看安裝的過程
先 執行configure文件--prefix =prefix 指明安裝的路徑,
Make
Make install
切換到/usr/local/apache 目錄下
形成很多目錄bin/目錄存放普通用戶可執行的二進制文件或程序,
Include存放頭文件
Logs 存放日誌文件
Man 存放手冊
Modules 存放額外安裝的模塊
給頭文件做符號鏈接
Ln -s /usr/local/apache/include /usr/include /apache
添加一條環境變量使bin/目錄下的程序在任何路徑下都可以執行
在/etc/init.d/目錄下編輯apache的開機啓動控制腳本
定義三個變量lockfile指明鎖文件的位置prog指明服務程序的位置configfile指明配置文件的位置
添加httpd服務到chkconfig,讓httpd服務在某種登錄級別下,開機默認爲on或off
需要在控制腳本httpd添加描述語句纔可以接受chkconfig管理
測試一下apache服務器是否成功,能夠訪問到站點主目錄下的apache自帶的一個網頁,說明apache安裝成功
3:安裝mysql服務器二進制版本
mysql-5.5.15-linux2.6-i686
在mysql源碼5.2版本安裝好之後,需要安裝c-make 工具,c-make是php連接數據庫的應用程序,mysql源碼安裝過程./configure --with-prefix 需要指明安裝路徑等參數make make install比較浪費時間大概需要一個小時,而二進制安裝方法,只需要解壓壓縮文件,就會形成相應的目錄,不需要編譯只需要一些相應的基礎命令,節約時間大概需要十分鐘。
二進制安裝的一些基本命令
創建符號鏈接 連接名爲mysql 修改mysql 目錄下的文件或目錄的擁有者和所屬組
執行/scripts/目錄下的mysql_install_db 這個腳本來安裝mysql服務器自帶的數據庫和表
自動執行mysql下的bin目錄下的myadmin 命令創建password和主機名。
把mysql目錄下的文件或目錄的擁有者修改過來,擁有者改爲管理員,mysql這個用戶要對data目錄的擁有操作的權限,所以date的擁有者還是mysql。
可選項 安裝bin目錄下的mysql_safe程序用於保護data目錄下的數據
拷貝mysql的服務腳本到init.d目錄下 名稱是mysqld
設置環境變量使../mysql/bin 目錄下的普通用戶可執行的二進制的文件或程序,/sbin目錄下的只有管理員纔可以執行的二進制的文件或程序,在任何路徑下都可以執行。
在環境變量$PATH後面添加路徑
執行/etc/profile 文件,刷新系統環境變量文件,查看$path
在/etc/man.conf 文件裏添加mysql 的手冊 ,手冊路徑是/usr/local/src/mysql/man
給頭文件include 做符號鏈接,連接到/usr/include/mysql
切換到lib目錄下面,有庫文件,要想讓系統調用庫文件,需要庫文件加載到緩存文件裏面緩存文件是ld.so.cache,在/etc/ld.so.conf.d目錄下面創建一個任意以.conf格式結尾的文件比如說mysql.conf,內容指明庫文件所在的目錄。
拷貝mysql的服務腳本,拷貝到init.d目錄下,系統啓動時可以運行此腳本。
chkconfig命令管理mysql,
chkconfig主要用來更新(啓動或停止)和查詢系統服務的運行級信息。謹記chkconfig不是立即自動禁止或激活一個服務,它只是簡單的改變了符號連接。
查看database,mysql服務器在安裝時會自動生成四個數據庫,你可以使用數據庫也可以新建數據庫,創建表格,查詢數據庫等操作。
進入mysql數據庫,查看錶格show tables;
安裝好之後下面是php-5.3.7.tar.bz2源碼的安裝
步驟跟apache服務器差不多,先解壓到/usr/local/src目錄下 ,進入到目錄裏
執行./configure
Apache的2.4之前的版本是通過調用php模塊來實現php動態頁面的,apxs是在安裝php時生成動態連接模塊的工具,所以在安裝php時要指明apxs的位置。
在apache的2.4以後的版本 ,apache服務器與php的連接是通過fastCGI,Fast CGI 是HTTP服務器與你的或其它機器上的程序進行“交談”的一種工具,其程序須運行在網絡服務器上,比如apache服務器。它的運行服務程序是php-fpm,PHP-fpm 是 一個 PHP FastCGI 進程管理器,Php-fpm可以和任何支持遠端fastCGI的web server工作。
make
make install
切換到/usr/local/php目錄下生成相應的目錄
進入到lib目錄和include目錄裏面沒有動態庫文件和頭文件,所以不需要刷新緩存文件加載庫文件,也不需要創建符號鏈接。
爲了在任何路徑下面都可以執行bin目錄下的工具,打開/etc/profile 文件
在環境變量$PATH後面添加路徑/usr/local/php/bin
然後執行. /etc/profile 文件
打開httpd的配置文件,在目錄索引中把php網頁放在最前面,apache服務器優先解析php頁面,然後打開/usr/local/src/php-5.3.7/INSTALL php的安裝引導文件複製AddType application/x-httpd-php .php .phtml語句到httpd.conf中,表明apache服務器可以解析以.Php .phtml 結尾的頁面。
到這裏我們的lamp環境已經搭建好了,測試環境是否搭建成功呢?測試apache與php之間的連接,php與mysql數據庫的連接
Apache服務器的默認站點主目錄是/usr/local/apache/htdocs
測試apache與php之間的連接
在這個目錄下面創建index.php頁面
測試php與mysql數據庫的連接,只需要在index.php頁面中加入連接數據庫的連接函數,查看函數的返回信息,就可以確定是否連接成功。
重啓mysql服務
關閉mysql服務,出現警告信息,並輸出failed
到這裏說明我們的lamp 環境應經徹底的搭建完成。