为了保持mac的干净整洁,决定用PD搭建一条web开发环境,记下整个过程。
首先是操作系统,本着习惯就好的原则,选用了Ubuntu server 12.04.4版。系统的安装很简单,http://www.ubuntu.org.cn/download/server 下载镜像,在虚拟机里安装即可。装好系统,为了方便开发,在系统上装了ssh,运行: sudo apt-get install openssh-server
zsh然后是安装zsh和配置oh-my-zsh。不久前从mactalk处知道了zsh的存在和强大,在此感谢mac君。整个安装过程十分简单,参考了mac君原文,点此进入。安装zsh,执行: sudo apt-get install zsh 即可。要将默认shell换成zsh,运行:chsh -s /bin/zsh安装oh-my-zsh前,要先安装git,sudo apt-get install git 。接下来就可以安装oh-my-zsh,安装有两种方法,自动安装:
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
手动安装
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zshcp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
重新登录shell即可。
nginx我采用的是源码安装。首先到 http://nginx.org/en/download.html 下载nginx,我下载的是nginx-1.4.5。解压,检查编译环境,默认的安装路径是/user/local/nginx,如果想更换目录使用--PRefix=your_path作为参数(your_path是你的目标路径)。
./configure
可以通过./configure —help获取帮助。
我在安装过程中遇到如下问题:
搞定之后,make,然后sudo make install就ok啦。
sudo /usr/local/nginx/sbin/nginx启动nginx服务。sudo /usr/local/nginx/sbin/nginx -s stop 停止服务。sudo /usr/local/nginx/sbin/nginx -s reload reload服务。
用浏览器输入服务器ip,看到如下内容,说明安装成功啦。
根据mac君的建议(详情见其原文),修改nginx配置/usr/local/nginx/conf/nginx.conf:
reload一下就ok了。
(由于安装方法采用源码安装,与mac君的配置文件路径不同,请大家灵活使用。)
MySQL一句话搞定:sudo apt-get install mysql-server,安装过程中需要按提示输入root用户密码。差点忘了,还有mysql的图形化管理工具phpmyadmin, sudo apt-get install phpmyadmin
phpsudo apt-get install php5sudo apt-get install php5-fpm
完成安装之后,为了与nginx合作,还需要配置一下php5-fpm(php的FastCGI实现之一),打开/etc/php5/fpm/php.ini,找到cgi.fix_pathinfo=1,将开头的分号去掉,并改为cgi.fix_pathinfo=0,使php解释器只会尝试解释特定类型的文件,这样更加安全。
修改/etc/php5/fpm/pool.d/www.conf,把 listen = 127.0.0.1:9000 修改为 listen = /var/run/php5-fpm.sock,前者是走TCP socket,后者是Unix domain socket,如果服务都在同一台机器上,建议使用后者,效率更好一些(参考mac君原文,点击进入)。注意,这里需要启动一下php5-fpm才会有/var/run/php5-fpm.sock这个文件。
重启php,完成。
sudo service php5-fpm restart
把各个服务联系起来独立的服务装好后,需要进行一些配置把他们联系起来。
nginx & php 首先是nginx和php(或者你需要通过网页访问的服务,如WordPress)。打开nginx配置文件nginx.conf,找到server,修改成下面的样子。
server {listen80;server_namelocalhost;root/var/www;index index.html index.htm index.php;location / {try_files $uri $uri/ /index.php?q=$uri&$args;}error_page 500 502 503 504 /50x.html;location = /50x.html {root /var/www;}location ~ /.php$ {fastcgi_passunix:/var/run/php5-fpm.sock;fastcgi_indexindex.php;include fastcgi_params;fastcgi_paramSCRIPT_FILENAME/var/www$fastcgi_script_name;}}
需要注意的是,配置项中的所有根目录地址需要改成自己网页的根目录地址。保存退出,使用之前说过的方法reload nginx就完成了。
测试:在/var/www目录下建立一个info.php文件,内容为:<?php phpinfo();?>
在浏览器地址栏中输入:yourip/info.php 查看配置是否成功。
这里发现一个没能解决的问题,html文件里如果有php语句,nginx好像无法解析,请问大神们该如何解决?
接下来是连接nginx与phpMyAdmin。做好上一步之后,这步很简单,只需要把/usr/share/phpmyadmin目录拷贝到你的网页根目录即可,这里就是/var/www目录下。浏览器地址栏输入:yourip/info.php 即可看到图形界面,用安装mysql时的用户名密码登录即可进行管理。
整个过程中多处参考了mac君的趣谈个人建站和搜索引擎上的各种问答贴,十分感谢!再次推荐mactalk: www.macshuo.com
新闻热点
疑难解答
图片精选