Linux下LAMP的安裝方法
Linux下LAMP的安裝方法
一、安裝apache服務(wù)器
- ./configure --prefix=/usr/local/apache2 \
- --with-included-apr \
- --enable-so \
- --enable-deflate=shared \
- --enable-expires=shared \
- --enable-rewrite=shared \
- --enable-static-support \
- --disable-userdir \
- --sysconfdir=/etc/httpd \
- --with-z=/usr/local/zlib/
- make && make install
檢查配置文件是否指定正確,進(jìn)入到 /etc/httpd/ 目錄下,查看配置文件 httpd.conf 和 extra 子目錄是否存在。
啟動(dòng) Apache 服務(wù)器,并查看端口是否開啟: /usr/local/apache2/bin/apachectl start // 啟動(dòng)
測(cè)試安裝結(jié)果,打開瀏覽器,在地址欄內(nèi)輸入 URL 為 http://localhost/ 去訪問 Apache 服務(wù)器
每種服務(wù)器軟件都有必要制做成開機(jī)自啟動(dòng)。 Apache 服務(wù)器開機(jī)自啟動(dòng),只要在“ /etc/rc.d/rc.local ”文件中,加上 Apache 服務(wù)器的啟動(dòng)命令即可,可以直接打開“ /etc/rc.d/rc.local ”文件,在***一行寫入 Aapache 啟動(dòng)命令,也可以使用“ echo ”命令追加進(jìn)去,命令行如下:
- echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local
#p#
二、安裝MySQL
版本:mysql-5.0.22.tar.gz
1、如果是***次在系統(tǒng)中安裝MySQL,需要建立相應(yīng)的組和用戶:mysql
- groupadd mysql
- useradd -g mysql mysql
2、先將文件上傳到linux,我的目錄為:/usr/local/src
使用tar -zxvf mysql-5.0.22.tar.gz解壓縮文件,得到一個(gè)新的文件夾:mysql-5.0.22
cd mysql-5.0.22 進(jìn)入。
3、使用“configure”命令檢查安裝需要的系統(tǒng)配置,并生成安裝配置文件。(’\‘是換行的標(biāo)志)
- ./configure --prefix=/usr/local/mysql \ //設(shè)置MySQL安裝目錄,注意空格
- --with-extra-charsets=all //安裝MySQL時(shí)安裝所有字符集
(出現(xiàn)錯(cuò)誤1)
4、 使用make命令編譯MySQL源碼。
5、編譯成功后,執(zhí)行make install命令安裝。
6、配置MySQL
創(chuàng)建 MySQL 數(shù)據(jù)庫服務(wù)器的配置文件,可以使用源碼包 support-files 目錄中的 my-medium.cnf 文件作為模板,拷貝到 /etc/ 目錄下,命名為“ my.cnf ”文件即可。
- cp support-files/my-medium.cnf /etc/my.cnf
創(chuàng)建 MySQL 授權(quán)表,進(jìn)入到安裝目錄“ /usr/local/mysql ”下,執(zhí)行 bin 目錄下的 mysql_install_db 腳本,用來初始化 mysql 數(shù)據(jù)庫的授權(quán)表,其中貯存了服務(wù)器訪問允許。
- bin/mysql_install_db --user=mysql
如果使用 root 用戶運(yùn)行上面的命令,應(yīng)當(dāng)使用 --user 選項(xiàng),選項(xiàng)的值應(yīng)與你在***步為運(yùn)行服務(wù)器所創(chuàng)建的登錄賬戶( mysql 用戶)相同。如果用 mysql 用戶登錄來運(yùn)行上面命令,可以省略 --user 選項(xiàng)。用 mysql_install_db 創(chuàng)建 MySQL 授權(quán)表后,需要手動(dòng)重新啟動(dòng)服務(wù)器。
將程序二進(jìn)制的所有權(quán)改為 root 用戶,數(shù)據(jù)目錄的所有權(quán)改為運(yùn)行 mysqld 程序的 mysql 用戶。如果現(xiàn)在位于安裝目錄 (/usr/local/mysql) 下。
- chown -R root .
- chown -R mysql var
- chgrp -R mysql .
7、啟動(dòng) MySQL 服務(wù)。
- /usr/local/mysql/bin/mysqld_safe --user=mysql &
MySQL 數(shù)據(jù)庫服務(wù)啟動(dòng)之后,查看一下 3306 端口是否打開,如果看到以下結(jié)果表明 MySQL 服務(wù)啟動(dòng)成功
- netstat -tnl|grep 3306
使用 mysqladmin 驗(yàn)證服務(wù)器在運(yùn)行中。以下命令提供了簡(jiǎn)單的測(cè)試,可檢查服務(wù)器是否已經(jīng)啟動(dòng)并能響應(yīng)連接。
- bin/mysqladmin version
8、設(shè)置訪問權(quán)限,在 MySQL 安裝過程中,使用 mysql_install_db 程序安裝了 MySQL 數(shù)據(jù)庫授權(quán)表,表定義了初始 MySQL 用戶賬戶和訪問權(quán)限,所有初始賬戶均沒有密碼。這些賬戶為超用戶賬戶,可以執(zhí)行任何操作。初始 root 賬戶的密碼為空,因此任何人可以用 root 賬戶不用任何密碼來連接 MySQL 服務(wù)器,并具有所有權(quán)限,這意味著 MySQL 安裝未受保護(hù)。如果你想要防止客戶端不使用密碼用匿名用戶來連接,你應(yīng)當(dāng)為匿名賬戶指定密碼或刪掉匿名賬戶,應(yīng)當(dāng)為 MySQL root 賬戶指定密碼。使用“ mysql –u root ”啟動(dòng) mysql 客戶端,連接 MySQL 服務(wù)器。
- bin/mysql -u root
如果有匿名賬戶存在,它擁有全部的權(quán)限,因此刪掉它可以提高安全,在 mysql 客戶端執(zhí)行 SQL 語句如下:
- DELETE FROM mysql.user WHERE Host='localhost' AND User='';
- FLUSH PRIVILEGES;
可以用幾種方法為 root 賬戶指定密碼,我們介紹其中兩種,
在 mysql 客戶端命令行上使用 SET PASSWORD 指定密碼,一定要使用 PASSWORD() 函數(shù)來加密密碼。設(shè)置 localhost 域的密碼為“ 123456 ”,其它域可以使用同樣的語句,使用的 SQL 語句如下:
- SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
進(jìn)入數(shù)據(jù)庫命令:bin/mysql -u root -h localhost –p
如果想關(guān)閉 MySQL 服務(wù)器,在命令行使用 MySQL 服務(wù)器的 mysqladmin 命令, 通過 -u 參數(shù)給出 MySQL 數(shù)據(jù)庫管理員用戶名 root 和通過 -p 參數(shù)給出密碼,即可以關(guān)閉 MySQL 服務(wù)器。
- bin/mysqladmin -u root –p shutdown
9、MySQL 服務(wù)器和 Apache 服務(wù)器一樣也有必要設(shè)置為開機(jī)自動(dòng)運(yùn)行,設(shè)置方法是進(jìn)入到 mysql 源代碼目錄 /usr/local/src/mysql-5.0.41/ 中,將子目錄 support-files 下的 mysql.server 文件復(fù)制到 /etc/rc.d/init.d 目錄中,并重命名為“ mysqld ”,命令行如下所示:
- cp support-files/mysql.server /etc/rc.d/init.d/mysqld
修改文件 /etc/rc.d/init.d/mysqld 的權(quán)限: chown root.root /etc/rc.d/init.d/mysqld
- chmod 755 /etc/rc.d/init.d/mysqld
使用 chkconfig 命令設(shè)置在不同系統(tǒng)運(yùn)行級(jí)別下的自啟動(dòng)策略,首先使用“ chkconfig --add mysqld ”命令增加所指定的 mysqld 服務(wù),讓 chkconfig 指令得以管理它,并同時(shí)在系統(tǒng)啟動(dòng)的敘述文件內(nèi)增加相關(guān)數(shù)據(jù)。
- chkconfig --add mysqld
然后使用“ chconfig –level 3 mysqld on ”命令和“ chconfig –level 5 mysqld on ”命令,在第三和第五等級(jí)中開啟 mysql 服務(wù),即在字符模式和圖形模式啟動(dòng)時(shí)自動(dòng)開啟 mysql 服務(wù)。
- chkconfig --level 3 mysqld on
- chkconfig --level 5 mysqld on
#p#
三、安裝PHP
版本:php-5.3.3
詳細(xì)安裝:
- ./configure --prefix=/usr/local/php \
- --with-config-file-path=/usr/local/php/etc \
- --with-apxs2=/usr/local/apache2/bin/apxs \
- --with-mysql=/usr/local/mysql/ \
- --with-libxml-dir=/usr/local/libxml2 \
- --with-png-dir=/usr/local/libpng/ \
- --with-jpeg-dir=/usr/local/jpeg6 \
- --with-freetype-dir=/usr/local/freetype \
- --with-gd=/usr/local/gd2 \
- --with-mcrypt=/usr/local/libmcrypt/ \
- --with-mysqli=/usr/local/mysql/bin/mysql_config \
- --with-zlib-dir=/usr/local/zlib \
- --enable-soap \
- --enable-mbstring=all \
- --enable-sockets
- make && make install
其中make test后,出現(xiàn)問題4
1、安裝完成后,需要建立 PHP 配置文件。在使用 configure 命令安裝配置時(shí)使用了“ --with-config-file-path=/usr/local/php/etc/ ”選項(xiàng),指定了配置文件的位置,將源碼包目錄下的“ php.ini-dist ”文件拷貝到指定的目錄“ /usr/local/php/etc/ ”中,并改名為“ php.int ”即可。
- [root@localhost php-5.3.3]# cp php.ini-production /usr/local/php/etc/php.ini
2、整合 Apache 與 PHP ,上面 PHP 編譯之前,我們使用 configure 命令安裝配置時(shí),使用了“ --with-apxs2=/usr/local/apache2/bin/apxs ”選項(xiàng),以使 Apache 2 將 PHP 作為功能模塊使用,但我們還要修改 Apache 配置文件,添加 PHP 的支持,告訴 Apache 將哪些后綴作為 PHP 解析。例如,讓 Apache 把 .php 或 .phtml 后綴的文件解析為 PHP 。使用 vi 打開 Apache 的配置文件 /etc/httpd/httpd.conf ,找到“ AddType application/x-gzip .gz .tgz ”項(xiàng),在其下方添加“ Addtype application/x-httpd-php .php .phtml ”可以將任何后綴的文件解析為 PHP ,只要在添加的語句中加入并用空格分開。這里以多添加一個(gè) .phtml 來示例。如下所示:
- vi /etc/httpd/httpd.conf
在“AddType application/x-gzip .gz .tgz”下增加如下內(nèi)容:
- Addtype application/x-httpd-php .php .phtml
#添這一個(gè)是為了將 .phps 作為 PHP 的源文件進(jìn)行語法高亮顯示
- Addtype application/x-httpd-php-source .phps
修改完成之后重新啟動(dòng) Apache 服務(wù)器,加載配置文件使修改生效:
- [root@localhost php-5.3.3]# /usr/local/apache2/bin/apachectl stop
- [root@localhost php-5.3.3]# /usr/local/apache2/bin/apachectl start
3、測(cè)試。
查看phpinfo 新建一個(gè)PHP文件phpinfo.php,內(nèi)容如下
- [root@localhost htdocs]# vi phpinfo.php
phpinfo();
?>
[root@localhost htdocs]# cp phpinfo.php phpinfo.php7
[root@localhost htdocs]# cp phpinfo.php phpinfo.phps
然后在瀏覽器中分別查看3個(gè)文件phpinfo.php7,phpinfo.php,phpinfo.phps
因?yàn)?php7后綴的文件不會(huì)被PHP Module解釋執(zhí)行,源代碼被直接打印出來了:
phpinfo.php被PHP解釋器解釋執(zhí)行,顯示PHP的相關(guān)信息:

源代碼經(jīng)過"the php source filter",按照PHP語法高亮顯示。

成這樣就功了。
【編輯推薦】