部署Phabricator時,根據官網的教程安裝和配置之後發現並不能正常訪問Phabricator.
幾經周折,最終成功部署上Phabricator,以下是部署的步驟:
1. 安裝Phabricator
到官網下載phabricator , libphutil和arcanist. 在部署成功後phabricator會去訪問這兩個文件夾,所以這三個文件夾請放到相同文件目錄下.
$ cd somewhere/ # pick some install directory somewhere/ $ git clone https://github.com/phacility/libphutil.git somewhere/ $ git clone https://github.com/phacility/arcanist.git somewhere/ $ git clone https://github.com/phacility/phabricator.git
2. 安裝php5-fpm
在ubuntu下安裝
sudo apt-get install php5-fpm
3. 安裝Nginx
在Ubuntu下安裝
sudo apt-get install nginx
4. 配置nginx下phabricator的配置文件, 這裏我們叫做phabricator.conf
切換到目錄 /etc/nginx/site-available/ 並創建phabricator.conf文件
將以下內容粘貼到phabricator.conf文件中.(內容跟官網上的配置文件不同)
server { listen 9005; #可修改成自己想要的端口號 server_name 127.0.0.1; #改成自己的IP, 127.0.0.1 或者localhost root /path/to/phabricator/webroot; #請改成你個人電腦上的phabricator/webroot路徑 client_max_body_size 75M; index index.php; rewrite ^/(.*)$ /index.php?__path__=/$1 last; #這一行必須要, Phabricator會判斷__path__的值,不設置會報錯 location /favicon.ico { try_files $uri = 204; } location / { try_files $uri $uri/ =404; } # 將PHP 腳本傳給 FastCGI server listening on 127.0.0.1:9000. 這部分內容在/etc/nginx/site-avaiable/default.conf裏面可以找到 location ~\.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# with php5-cgi alone: #fastcgi_pass 127.0.0.1:9000; # with php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; #使用php5-fpm一定要用這個配置,否則會報錯502 fastcgi_index index.php; include /etc/nginx/fastcgi_params; }
5. 啓動php5-fpm
sudo /etc/init.d/php5-fpm start
如果一上來使用 sudo service php5-fpm start可能會失敗, 使用前面的那個命令成功之後再用service命令就不會有問題.
6. 啓動nginx
sudo /etc/init.d.nginx start
7. 訪問一下127.0.0.1:9005看下效果.
如果你沒有安裝mysql或者mysqli, phabricator會提示你進行安裝.
在ubuntu下
sudo apt-get install php5-mysqlnd #使用php5-mysql安裝會失敗
8. 進行下一步
進行phabricator文件夾, 在ubuntu 終端下運行 ./bin/storage upgrade
請確保數據庫MySQL是開啓的, 這樣數據庫中就會生成phabricator相關的數據庫和表.
部署基本結束,可以成功進行訪問並進行下一步動作了.