在Mac上搭建自己的伺服器——Nginx
WHAT
本篇主要是基於Nginx在Mac上搭建自己的伺服器。
我相信很多朋友肯定是第一次聽到Nginx,關於它具有怎樣的傳奇,這兒肯定說不完也說不透.
有興趣的朋友可以自行google或者baidu.
WHY
為什麼要搭建自己的伺服器呢。
好處肯定多多,這兒說一條——模擬資料。
很多時候,我們在前端開發的過程中,API介面沒有做好.
當我們要鋪介面時,如果等待API的開發完成,無疑是件很耽誤工作的事情。
還有一點,即使API完成了,我們開發完專案時,需要自測各種極限的資料。例如
- 約定好返回的是NSString,如果返回的是NSNumber,你會崩嗎?
- 約定好的一個欄位有返回值,突然間返回為null,你會崩嗎?
-
約定好的label上的賦值文字是最多7個字,突然給你77個字,你會變得很醜嗎?
有人問了,不是約定好了嗎?
話說API也是人開發的,你寫的客戶端還會crash呢,就不允許人家後臺出錯啦???
講道理嘛大兄弟!
HOW
複雜來說,這是件很難的事情,因為無論是Nginx,還是它所需要的準備工作,都是一個個龐然大物。搞不懂!
你需要安裝Nginx,你可以自己獨立裝,也可以用別的包安裝.
後者那推薦的是Homebrew.這也是下面我帶大家一起來做的。
如果是前者,不要問我,我裝了一下午,然後失敗了。
簡單來說,跟著我來做,幾個步驟,幾分鐘,帶你實現。
- 平臺:Mac
-
系統:10.11.1
1. 安裝Homebrew
2. 安裝Nginx
3. 啟動Nginx
4. 配置JSON檔案
5. 配置Nginx
6. 展現成果
1.安裝Homebrew
開啟終端,輸入:
- ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
跟著步驟走。終端都有提示。
2.依賴Homebrew安裝Nginx
依舊在終端中
- brew install nginx
這個等待時間會比較長。如果你仔細看了終端的程序。你會發現你用homebrew安裝是多麼聰明瞭。其實在安裝nginx之前還要幫你安裝很多別的,如果你獨立安裝,是很費勁的。。。
3.啟動Nginx
依舊在終端裡,輸入
- nginx
回車就行了。別驚訝,就這麼簡單。
怎樣驗證Nginx能用了呢。你在瀏覽器裡輸入localhost:8080
,回車,出現以下畫面,說明成功。
如果是以下畫面,轉身擡頭挺胸三鞠躬,再回來看看那裡出錯了。
4.配置JSON檔案
那配置檔案是在
- /usr/local/Cellar/nginx/1.8.0/html/
這個目錄下會預設有50x.html和index.html兩個檔案。你再新加一個json檔案,取個名字叫oscar.json,裡面隨便寫些字典陣列,儲存。
5.配置Nginx
安裝完之後,預設路徑是在
- /usr/local/etc/
這個檔案下會有一個nginx資料夾和一個openssl的資料夾。
點開nginx資料夾,裡面會有個
- nginx.conf.default
的檔案,記住,不要看錯了,這裡面的名字很相像。用文字編輯器開啟,裡面預設是有內容的,可以看看。將以下內容貼上進去。
- server {
- listen 8080;
- server_name localhost;
- #access_log logs/host.access.log main;
- location ~* {
- add_header Content-Type "application/json";
- root html;
- if (!-f $request_filename) {
- rewrite ^/(.*) /$1.json last;
- }
- index index.php index.html index.htm;
- }
- error_page 405 =200 http://$host$request_uri;
- }
6.展現成果
如果你新加的json檔案叫oscar.json,目錄是在剛剛說的
- /usr/local/Cellar/nginx/1.8.0/html/oscar.json
那麼你在瀏覽器裡輸入
- localhost:8080/oscar.json
看看你的成果吧!
如果你的頁面有你配置的JSON檔案,那麼恭喜你。別人如果想訪問你的資源,保證你兩在同一個區域網內,然後把你的ip地址替換localhost,再看看你朋友的電腦的頁面吧。
通過brew 安裝install 後
- sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemons
- sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.nginx.plist
即可。