緊接上一篇ZF2入門:Windows環境下從零開始Zend Framework 2.0 (ZF2)環境搭建,本次是Linux/Ubuntu環境下從零開始搭建系統並運行一個ZF2項目的全過程。php
寫日誌的Linux用的是Ubuntu12.04 LTS 32bit版本,爲了簡化整個過程,沒有直接編譯,所有采用了apt-get安裝軟件包。另外本次爲了更全的覆蓋可能的狀況,服務器採用了Nginx,代碼部署直接採用Git,Windows下一樣能夠借鑑本篇的配置。html
日誌直接以root身份運行,普通用戶記得在全部指令前加sudomysql
Ubuntu12.04 LTS經過apt安裝的默認php版本是5.3.10,php5.4須要編譯安裝,鑑於php5.3.10運行ZF2已經足夠,因此本次就再也不考慮php5.4的狀況。nginx
apt-get update apt-get upgrade apt-get install mysql-server mysql-client nginx php5-fpm php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-mcrypt php5-memcached git git-core
安裝完畢後運行git
service nginx start
而後訪問http://localhost應該就能夠看到Nginx的Hello World了。github
我的習慣將www目錄放在/opt/htdocs,請根據環境目錄不一樣對應調整下面的路徑及配置:sql
cd /opt mkdir htdocs cd htdocs git clone git://github.com/zendframework/ZendSkeletonApplication.git zf2 cd zf2 git submodule update --init
短短几行指令,代碼就已經部署好了。windows
vi /etc/hosts
一樣能夠添加任意開發環境用域名:瀏覽器
127.0.0.1 zf2.local 127.0.0.1 www.zf2.local
能夠訪問 http://zf2.local 測試是否已經生效。服務器
編輯Nginx配置文件
vi /etc/nginx/sites-enabled/default
修改成
server { listen 80 default; index index.html index.htm; server_name localhost; location / { root /opt/htdocs; index index.php index.html index.htm; try_files $uri $uri/ /index.html; } location ~ \.php$ { include fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /opt/htdocs$fastcgi_script_name; } } server { listen 80; server_name zf2.local www.zf2.local; location / { root /opt/htdocs/zf2/public; index index.php index.html index.htm; if (!-e $request_filename){ rewrite ^/(.*)$ /index.php?$1& last; } } location ~ \.php$ { include fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /opt/htdocs/zf2/public/$fastcgi_script_name; } }
上半段是將Nginx的www根目錄更改成/opt/htdocs。下半段是將zf2.local測試域名綁定到/opt/htdocs/zf2/public
重啓Nginx服務
service nginx restart
在瀏覽器中從新訪問 http://zf2.local 就能夠打開ZendSkeletonApplication測試程序了。
至此,一個Ubuntu下最基本的ZF2項目連同環境已經搭建完畢,能夠去修改zf2的項目代碼去開始一個本身的項目了。其餘Linux發行版能夠類推,CentOS一樣能夠很方便的用Yum安裝。