本人親測可用,有些組件可以不要安裝,必須的是下面一開始安裝的幾個組件。
1.仔細手動安裝法(最小組件)
sudo apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-server
有些是因爲依賴關係會自動安裝的,但是爲了保險,所以還是全部安裝。開始安裝時sudo會問您密碼(只是有可能),這是系統管理員的密碼。安裝途中MySQL要求設定root賬戶的密碼,這裏的root是Mysql的root賬戶密碼,不是系統的root賬戶,不要搞混了。
sudo apt-get install apache2 mysql-server php5 php5-mysql #終端命令
編輯php配置文件
sudo gedit /etc/php5/apache2/php.ini
在extension下面加上(任何獨立一行就行)
extension=php_mcrypt.so (原來的php5-mcrypt.so無效)
保存,重啓apache2
sudo /etc/init.d/apache2 restart
在瀏覽器裏輸入http://localhost/phpmyadmin
配置文件路徑
1>apache 的配置文件路徑 /etc/apache2/apache2.conf
2>apache 網站字符編碼配置路徑 /etc/apache2/conf.d/charset
3>php.ini 路徑 /etc/php5/apache2/php.ini
4>mysql配置文件 路徑 /etc/mysql/my.cnf 一般不要使用,尤其是新手
5>phpmyadmin配置文件路徑 /etc/phpmyadmin/apache.conf
6>默認網站根目錄 /var/www
[編輯] 常用命令
1.重啓apache
sudo /etc/init.d/apache2 restart
2.重啓mysql
sudo /etc/init.d/mysql restart
[編輯] 配置apache
1.更改默認字符集
終端中使用命令
sudo nano /etc/apache2/conf.d/charset
將其中的
# AddDefaultCharset
的井號去掉,後面字段改成UTF-8(如果您的網站是這樣了話)
AddDefaultCharset UTF-8
中間的空格數並不重要,但一定要有。
2.添加支持文件類型(一般不需要),與網站地址(需要)
終端中使用命令
sudo nano /etc/apache2/apache2.conf
在配置文件最後面加入下面幾行:
添加文件類型支持
AddType application/x-httpd-php .php .htm .html
添加首頁文件 三個的順序可以換 前面的訪問優先 (當然你也可以加別的 比如default.php)
<IfModule dir_module> DirectoryIndex index.htm index.html index.php </IfModule>
更改服務器地址(改爲本機)
ServerName 127.0.0.1
修改apache的根目錄DocumentRoot:
sudo nano /etc/apache2/sites-enabled/000-default
將其中的 DocumentRoot /var/www 改成您想要的目錄比如 DocumentRoot /var/www/htdocs/ 以上Apache2就基本配置完成了。重啓Apache2服務即可。 下面的是參考,一般不需要改變,除非有特殊需求。
sudo nano /etc/apache2/ports.conf #修改端口號,修改 Listen 80
再修改site的配置文件
/etc/apache2/sites-available/default
80是端口號
<VirtualHost *:80>
sudo a2enmod rewrite #開啓apache 的rewrite功能
[編輯] Apache模塊
sudo a2enmod #啓用模塊
sudo a2dismod #禁用模塊
[編輯] 配置PHP5
這個沒什麼好說的 根據個人自己需要
建議將安全模塊開啓(注意!開啓後phpmyadmin會不能用)
sudo nano /etc/php5/conf.d/php.ini
注意:你可能需要敲入命令
php --ini
或
php -i | grep php.ini
來獲取你的php cli加載的php.ini路徑(Loaded Configuration File,比如 /etc/php5/cli/php.ini 而非 /etc/php5/conf.d/php.ini)。但此文件並不一定是apache php5模塊加載的php.ini文件,如果要獲得apache php5模塊加載的php.ini,請參見測試_phpinfo()
nano可以用Ctrl+w來搜索將 safe_mode = off safe_mode = 設置爲 safe_mode = on safe_mode = /var/www/htdocs/ 以上 /var/www/htdocs/是您在上面設置個網站根目錄,請按照情況修改,結尾的/是一定要加的,
不然 /var/www/htdocsa,/var/www/htdocsb,等目錄也可以訪問。
以下是更改默認時區
;date.timezone=
去掉前面的分號 後面加個PRC 。表示中華人民共和國(就是GMT+8時區)
date.timezone= PRC
[編輯] 配置MySQL
[編輯] MySQL常用命令
MySQL大部分命令是以
;
結尾,這裏除了5給出的命令,其它一定要以
;
結尾!
1.進入mysql
mysql -h [服務器地址] -u [用戶名〕-p
這是訪問本地服務器
mysql -h 127.0.0.1 -u [用戶名〕 -p
如:mysql -h 127.0.0.1 -u root -p
認證成功之後就進入mysql的命令控制檯,以下都是在mysql的命令控制檯的命令。
2.顯示已經存在的數據庫
SHOW DATABASES;
3.創建數據庫數據庫名在這裏是沒有[]號的!!,還有在linux下是區分大小寫(只是使用時有關!)。
CREATE DATADASE [數據庫名];
4.創建一個受限用戶這個用戶(testuser)只有一個數據庫(這裏是test庫)的訪問寫入權限,這個數據庫創建與刪除表的權限,並且只能在本地登入,密碼爲userpasswd
grant select,insert,update,delete,create,alter on test.* to 'test'@'localhost' IDENTIFIED BY 'userpasswd';
5.退出數據庫
quit
配置文件(新手、無特殊要求勿動)
sudo nano /etc/mysql/my.cnf
這裏有一個地方要注意 默認:是隻允許本地訪問數據庫的這裏不是說本機架設了網站,用戶通過架設在的網頁不能訪問MySQL ,是指其它機子不能直接訪問MySQL
bind-address 127.0.0.1
解除限制只能本地訪問mysql,如果需要其他機器訪問,應使用如下語句,把這“bind-address 127.0.0.1”句話用#註釋掉
#bind-address 127.0.0.1
配置phpmyadmin(沒裝就不要看)
sudo apt-get install phpmyadmin
訪問 http://localhost/phpmyadmin ,phpmyadmin 默認並不是安裝在 /var/www下面的而是在 /usr/share/phpmyadmin
你可以把phpmyadmin複製過去 或者 鏈接過去
sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin
然後 終端中運行命令
sudo gedit /etc/phpmyadmin/apache.conf
然後把下面兩句的路徑 改爲/var/www/phpmyadmin(因爲我已經配置好環境,所以忘記了phpmyadmin中默認配置怎麼寫的。。反正就是在第三行和第四行的兩句.如果我沒記錯的話 應該是下面這樣)
Alias /phpmyadmin /usr/share/phpmyadmin <Directory /usr/share/phpmyadmin>
改爲:
Alias /phpmyadmin /var/www/phpmyadmin <Directory /var/www/phpmyadmin>
LAMP到此已經配置完成了
測試 phpinfo(); (根據需要,自己選擇,可不做)
創建、測試phpinfo:
sudo vi /var/www/info.php
<?php phpinfo(); ?>
打開 http://localhost/info.php 。
性能優化(根據需要,自己選擇,可不做)
安裝Zend Optimizer
要求PHP版本爲5.2,不支持Ubuntu10.04的PHP5.3,請參照PHP5.2。
下載 Zend Optimizer。直接貼下載地址,參考版本號改(這是32位的),不然主頁要註冊才能下
http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
tar zxvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_2_x_comp sudo mkdir /usr/local/zend sudo cp ZendOptimizer.so /usr/local/zend
編輯php.ini
sudo gedit /etc/php5/apache2/php.ini
開頭加入,注意標點符號要英文。
[Zend Optimizer] zend_optimizer.optimization_level=1 zend_extension="/usr/local/zend/ZendOptimizer.so"
重啓apache2
sudo /etc/init.d/apache2 restart
還是上面那個phpinfo文件,要能看到如下信息
This program makes use of the Zend Scripting Language Engine: Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
安裝XCache
sudo apt-get install php5-xcache
root@ubuntu:/home/qii# dpkg -l | grep xcach ii php5-xcache 1.2.2-5 Fast, stable PHP opcode cacher
xcache配置文件路徑是
/etc/php5/conf.d/xcache.ini
編輯php.ini
sudo gedit /etc/php5/apache2/php.ini
把xcache.ini的內容加入到php.ini。重啓apache2
sudo /etc/init.d/apache2 restart
檢查安裝是否成功
root@ubuntu:/home/qii# php -v PHP 5.2.10-2ubuntu6 with Suhosin-Patch 0.9.7 (cli) (built: Oct 23 2009 16:30:10) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies with XCache v1.2.2, Copyright (c) 2005-2007, by mOo
還有前面info.php頁應該有XCache模塊
這裏有點奇怪的是,如果不把xcache.ini的內容加入php.ini,apache也能載入XCache,但info.php上沒XCache模塊。
安全:隱藏服務器信息
vim /etc/apache2/apache2.conf
ServerTokens Prod
指定apache2的運行賬戶
以root來運行是很危險的,用下面的方法更改,這裏是都改爲www-data
vim /etc/apache2/envvars export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data
要確認存在這些用戶組。
啓用.htaccess
這個對pbpbb3這樣有附帶.htaccess
的程序有利,不過其它場合有可能引發問題。方法:在網站主機配置下加入AllowOverride AuthConfi
例子:
vim /etc/apache2/sites_available/default <Directory /var/www/> ... AllowOverride AuthConfig ... </Directory>
其他:PDO的安裝
pecl search pdo
sudo pecl install pdo
sudo pecl install pdo_mysql
最後編輯php.ini
sudo gedit /etc/php5/apache2/php.ini
再最後面添加兩行:
extension = pdo.so
extension = pdo_mysql.so
排錯: 無法解析php文件,瀏覽器提示下載所要打開的php文件
執行:
sudo apt-get install libapache2-mod-php5 sudo a2enmod php5
如果顯示爲:
This module does not exist!
那就要徹底刪除libapache2-mod-php5,然後重新安裝它
sudo apt-get remove --purge libapache2-mod-php5 sudo apt-get install libapache2-mod-php5
重啓apache2
sudo /etc/init.d/apache2 restart
清除瀏覽器緩存,然後輸入http:localhost
附錄: apache2配置文件與子目錄
/etc/apache2/apache2.conf
全局配置
/etc/apache2/envvars
環境變量
/etc/apache2/ports.conf
httpd服務端口信息
/etc/apache2/conf.d/
一般性配置文件存放地
/etc/apache2/mods-available/
已安裝的模塊
/etc/apache2/mods-enabled/
已經啓用的模塊
/etc/apache2/sites-available/
可用站點信息
/etc/apache2/sites-enabled/
已經啓用的站點信息,當中的文件是到/etc/apache2/sites-available/
文件的軟連接。