針對Web開發linux開發環境搭建整理
重裝系統已成為生活常事,每次都要重裝一大堆的軟件和工具,linux安裝軟件不像window方便,所以整理整個 流程,方便以后查看。不裝十遍linux都不知道linux是啥... 本文主要針對Ubuntu,個人比較喜歡Ubuntu,界面美觀(不要噴,不是所有人都偏向linux命令!),軟件管理方便,對窮屌絲來程序猿來所就是 YY Mac!
常用工具: Chrome: web開發必備利器,putty: ssh連接服務器工具, fiddler(Ubuntu): http查看調試工具,Sublime Text: 神一樣的編輯器,VIM:管理linux必備武器.
環境搭建:python,LAMP,node,Mongodb
對于硬件性能較差的筆記本,不支持U盤啟動,可以利用Ubuntu系統ISO內置的wubi程序安裝,想安裝window軟件一樣方便,不過不能設置各個目錄大小,裝來用作練習還是很不錯的。
系統安裝成功后,修改root密碼,Ubuntu系統root密碼默認為空,sudo passwd root,輸入兩次密碼后,root密碼重置成功;
Ubuntu軟件安裝包,一般以deb結尾,安裝方法:sudo dpkg -i package.deb
安裝包解壓: .bz2文件:tar -xjf setup.tar.gz2 ; .tar 文件: tar -xf setup.tar;zip: unzip setup.zip
快捷方式生成: ln -s path1 path2 (注意: 此處兩個路徑都是絕對路徑,從根目錄開始)
Sublime Text插件安裝:打開ST2控制臺: Ctrl+` , 輸入:“import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())”(去掉兩頭雙引號),重啟ST2,插件安裝工具安裝完成; 推薦好用的插件:SFTP(FTP工具),SideBarEnhancements(右鍵增強工具),DocBlockr(非常好用的代碼注釋工具),JsFormat(JS格式化工具),Theme-Soda(炫酷的主題),最后在Settings-User文件中添加:"font_face": "courier new", "font_size": 9.0, "highlight_line": true, "scroll_past_end": false, "theme": "Soda Dark.sublime-theme" 這樣ST2已經有強悍了。
putty安裝:putty 可通過Ubuntu Software Center安裝
Fiddler安裝: 想在Ubuntu或者Mac下使用Fiddler,需要借助Mono,安裝方法:sudo apt-get install mono-winforms*,之后從 http://fiddler.wikidot.com/mono 下載壓縮包,unzip fiddle.zip,解壓即可使用
VIM安裝: Ubuntu系統集成vim版本較舊,而且缺乏基本配置,所以有必要更新VIM,sudo apt-get install vim
Python環境搭建:Ubuntu環境默認為2.7.5+,版本比較奇怪,所以最后跟新到最新的2.7.6。步驟:1、wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz; 2、解壓: tar xvf Python-2.7.6.tar.xz;3、安裝bzip模塊(編譯node需要,不然報錯): wget http: //bzip.org/1.0.6/bzip2-1.0.6.tar.gz、 tar zxvf bzip2-1.0.6.tar.gz、make -f Makefile-libbz2_so、make、make install PREFIX=/usr/local、cp ./libbz2.so.1.0.6 /usr/local/lib;3、編譯Python: ./configure --prefix=/usr/local、 make install。Python環境搭建完成。
g++安裝:安裝g++編譯工具(node編譯需要):sudo apt-get install g++
node 環境搭建: 1、wget http://nodejs.org/dist/(version)/node-(version).tar.gz;2、解壓:tar zxvf node-(version).tar.gz;3、進入目錄:cd node-(version);4、安裝: ./configure 、 make 、 make install;5、檢查是否安裝成功:node -v,顯示版本號就說明node安裝成功!6、npm包已經繼承到node中,不需要再安裝;
node調試工具,nodejs調試比較麻煩,每次通過node命令,執行相應的文件,如果修改過文件后得重新執行,比較麻煩,不過肯定有人耐不住,開發相應的工具:1、supervisor,執行的文件修改過后立刻自動重新載入執行文件,相當方便。npm install -g supervisor,supervisor app.js,即可調試nodejs文件,調試完成Ctrl + C即可退出supervisor;2、node-inspector: 向在Chrome下調試js一樣調試nodejs,npm install -g node-inspector,安裝好了可以開始調試了,但命令順序很重要(這個本人試過N次,Google過N次才弄懂):首先,啟動node-inspector ,然后以debug模式運行nodejs腳本:node --debug app.js ,Chrome打開(親試:FireFox不兼容!)http://127.0.0.1:8080/debug?port=5858,就可方便調試nodejs了!
Mongodb安裝:按照官方文檔的做法:1、sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10;2、echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list;3、sudo apt-get update;4、sudo apt-get install mongodb-10gen,經過漫長的等待...(哭死,校園網速度真可以),Ps: 如果中途因為網絡問題中斷安裝,重新安裝會報錯,只要將報錯的lock文件刪除,并執行sudo apt-get update即可。5、下載并安裝完成,輸入mongo,進入mongo shell 說明Mongodb安裝成功!
LAMP搭建: 利用Ubuntu的apt-get還是比較方便的。1、sudo apt-get install apache2 mysql-server mysql-client php5 php5-gd php5-mysql; 2、Apache默認Document路徑是/var/www,習慣把文件放在/var/www/html下,所以修改默認DocumentRoot,以root身份,vi /etc/apache2/sites-enabled,將“DocumentRoot /var/www”改為“DocumentRoot /var/www/html/“;3、修改html文件夾權限:sudo chmod 777 /var/www/html;4、安裝phpmyadmin:sudo apt-get install phpmyadmin,安裝過程中會提示選擇Web Server,選擇apache2,同時要求輸入MySQL密碼;5、建立phpmyadmin與apache2連接:ln -s /usr/share/phpmyadmin /var/www/html;6、測試phpmyadmin,打開http://localhost/phpmyadmin,提示The json extensiion is missing,其實json模塊已經默認安裝上,只是沒有配置好。配置方法:以root身份,vi /etc/php5/mods-available/json.ini,將priority=20前面的注釋去掉;7、啟用Apache的mod_rewrite模塊:sudo a2enmod rewrite,重啟Apache:/etc/init.d/apache2 restart OR service apache2 restart;8、測試整個環境是否搭建成功:寫個php腳本,輸出Connected!環境搭建成功!
<?php $link = mysql_connect("localhost","root","password"); if (isset($link)) { echo "Conneted!"; } else { die("Could not connect:" . mysql_error()); } mysql_close(); ?>
暫時用到這么多,后續發現好的工具繼續添加
</ul>
來自:http://my.oschina.net/No5stranger/blog/208411