针对Web开发linux开发环境搭建整理

jopen 11年前

重装系统已成为生活常事,每次都要重装一大堆的软件和工具,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.gztar zxvf bzip2-1.0.6.tar.gzmake -f Makefile-libbz2_somakemake install PREFIX=/usr/localcp ./libbz2.so.1.0.6 /usr/local/lib;3、编译Python: ./configure --prefix=/usr/localmake 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 makemake install;5、检查是否安装成功:node -v,显示版本号就说明node安装成功!6、npm包已经继承到node中,不需要再安装;

  • node调试工具,nodejs调试比较麻烦,每次通过node命令,执行相应的文件,如果修改过文件后得重新执行,比较麻烦,不过肯定有人耐不住,开发相应的工具:1、supervisor,执行的文件修改过后立刻自动重新载入执行文件,相当方便。npm install -g supervisorsupervisor 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();  ?>
  • 暂时用到这么多,后续发现好的工具继续添加

来自:http://my.oschina.net/No5stranger/blog/208411