window下搭建nginx+C++開發環境

安裝nginx###

最近要搭http服務器,經過谷歌和請教高手,決定選擇nginx,在window上搭建nginx,網上一大堆,都挺好使的,我參照的是:(原)nginx+FastCGI+c++。nginx安裝後,啓動的時候遇到了這個爲問題:Win7下Nginx啓動失敗,80端口被佔用然後在Win7下Nginx啓動失敗,80端口被佔用找到了解決方法。

現在要說道問題的重點了,因爲我是要用C++來處理前端的request,在網上找了下,大部分都是關於PHP的,有用C++的,也寫的不是很清楚,我就繼續谷歌,發現了一個老外的blog How to run fastcgi and nginx on windows,與我的需求很匹配,說的就是我需要解決的問題。具體參照過程中也遇到一些問題, 大概記錄了下,現整理如下:
1. 下載了patch-2.5.9-7-bin.zip
在使用立馬說的patch工具時出現了問題,發現不能用,然後下載了patch-2.5.9-7-bin.zip,注意window下使用exe文件需要加絕對路徑的。然後執行bin目錄下的可執行文件。
2. 下載fcgi.tar.gz
解壓後,需要重新編譯生成二個文件libfcgi.dll和libfcgi.lib。但是因爲fcgi.tar.gz包中window相關的太老了,還是支持VC6,我們現在都是VS2010,或者更高的版本,直接打開,根本不行。這個時候就要用到patch工具了,網上有相關的patch,分別是:
1-align-x64.patch
2-socklen.patch
3-gcc44.patch
4-vc9.patch
5-build-warnings.patch
用patch去執行這5個文件,然後就可以支持VS2010了,這樣就可以去生成libfcgi.dll和libfcgi.lib文件了
3. 把libfcgi.dll文件拷貝到C:\nginx-1.8.0
需要把libfcgi.dll文件拷貝到C:\nginx-1.8.0,準確的說應該是與spawn-fcgi.exe同一個目錄下,因爲我的spawn-fcgi.exe是放在C:\nginx-1.8.0,所以我的libfcgi.dll也是放在C:\nginx-1.8.0
4. 重啓nginx
最後執行的時候,發現既然不成功,後面想了一下,應該是我改了nginx.conf,卻沒有重啓nginx導致的,後面執行nginx -s reload,就可以了


備註###

1. nginx用到的命令整理:
start nginx 啓動Nginx服務器
nginx -s stop // 停止nginx
nginx -s reload // 重新加載配置文件
nginx -s quit // 退出nginx
**2. spawn-fcgi.exe命令:### **
spawn-fcgi.exe -f ./cgi-bin/echo-cpp.exe -a 127.0.0.1 -p 8089
3. 查看進程:
tasklist | findstr "imagename eq nginx.exe" //列出nginx.exe進程
tasklist | findstr “PID號”
netstat -ano | findstr "8081" //找到8081端口的進程的PID

相關文件閱讀###

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章