轉載自:http://www.comflag.com/2011/05/01/apache-web.htm
電影《社交網絡》中,facebook創始人馬克.扎克失戀后入侵哈佛大學宿舍樓服務器,竊取數據庫資料,並在兩個小時內完成了一個給校內女生評分的交互網站,該網站一天內點擊數過10W,直接導致學校服務器崩潰。。。。。。
其實,構建那樣一個網站並不需要很多高深的技術,任何一個有一定網絡編程基礎的人都可以做到。馬克構建網站所用的是Apache服務器和PHP服務器腳本語言,我曾經用三天時間學習PHP,然后用了兩個星期為學校寫了一個網站,可見PHP是很簡單的,而facebook后台也是用php寫的,當然,大家現在看到的我的wordpress博客后台也是php~~。
話說回來,很多人可能已經用上ubuntu了,大家可能花了大量時間在ubuntu的美化上,這無可厚非,但是,ubuntu應該給我們的工作和學習帶來更多的便利和方便。ubuntu作為linux,為我們提供了強大的網絡方面的功能,其中的服務器技術尤其強大,安全。如果不學習linux的網絡技術,很難說自己掌握了linux。
今天,我在ubuntu下配置了一個Apache服務器。通過Apache我們可以學習php網絡編程,可以用它來部署自己本地的wordpress博客,從而進一步通過網絡和朋友交流。從此,你將深刻體會到網絡帶個我們的神奇力量,至少我是這樣覺得的~~
步驟一,安裝apache2
sudo apt-get install apache2
安裝完成。
運行如下命令重啟下:
sudo /etc/init.d/apache2 restart
在瀏覽器里輸入http://localhost或者是http://127.0.0.1,如果看到了It works!,那就說明Apache就成功的安裝了,Apache的默認安裝,會在/var下建立一個名為www的目錄,這個就是Web目錄了,所有要能過瀏覽器訪問的Web文件都要放到這個目錄里。
步驟二 ,安裝php:
sudo apt-get install libapache2-mod-php5 php5
此外,建議安裝擴展php5-gd php5-mysql,安裝方式同上.
安裝完后,我們要重新啟動Apache,讓它加載PHP模塊:
sudo /etc/init.d/apache2 restart
接下來,我們就在Web目錄下面新建一個test.php文件來測試PHP是否能正常的運行,命令:
sudo gedit /var/www/test.php
然后輸入:
<?php echo "hello,world!!"?>
接着保存文件,在瀏覽器里輸入http://127.0.0.1/test.php,如果在網頁中顯示hello,world!!,那就說明PHP已經正常運行了。
步驟三,安裝mysql數據庫:
sudo apt-get install mysql-server mysql-client
apt-get程序會自動下載安裝最新的mysql版本。在安裝的最后,它會要求里輸入root的密碼,注意,這里的root密碼可不是Ubuntu的root密碼啊,是你要給MySQL設定的root密碼。
步驟四,安裝phpmyadmin-Mysql數據庫管理
sudo apt-get install phpmyadmin
phpmyadmin設置:
在安裝過程中會要求選擇Web server:apache2或lighttpd,使用空格鍵選定apache2,按tab鍵然后確定。然后會要求輸入設置的Mysql數據庫密碼連接密碼Password of the database’s administrative user。
然后將phpmyadmin與apache2建立連接,以我的為例:www目錄在/var/www,phpmyadmin在/usr/share /phpmyadmin目錄,所以就用命令:
sudo ln -s /usr/share/phpmyadmin /var/www
建立鏈接。
phpmyadmin測試:在瀏覽器地址欄中打開http://localhost/phpmyadmin。
以上ALMP的基本組件就安裝完畢了,下面我們再來看一些其他的設置:
步驟五,設置Ubuntu文件執行讀寫權限
LAMP組建安裝好之后,PHP網絡服務器根目錄默認設置是在:/var/www。由於Linux系統的安全性原則,改目錄下的文件讀寫權限是只允許root用戶操作的,所以我們不能在www文件夾中新建php文件,也不能修改和刪除,必須要先修改/var/www目錄的讀寫權限。在界面管理器中通過右鍵屬性不能修改文件權限,得執行root終端命令:
sudo chmod 777 /var/www
。然后就可以寫入html或php文件了。777是linux中的最高權限,表示可讀,可寫,可執行。