Nginx windows下搭建過程:nginx無法啟動

來源:互聯網
上載者:User

內容列表: 簡要介紹 下載安裝 配置測試

一、簡要介紹

Nginx ("engine x") 是一個高效能的 HTTP 和 反向 Proxy 伺服器,也是一個 IMAP/POP3/SMTP Proxy 伺服器。 Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 網站開發的,第一個公開版本0.1.0發佈於2004年10月4日。其將原始碼以類BSD許可證的形式發布,因它的穩定性、豐富的功能集、樣本設定檔和低系統資源的消耗而聞名。2011年6月1日,nginx 1.0.4發布。

Nginx作為負載平衡伺服器:Nginx 既可以在內部直接支援 Rails 和 PHP 程式對外進行服務,也可以支援作為 HTTPProxy 伺服器對外進行服務。Nginx採用C進行編寫,不論是系統資源開銷還是CPU使用效率都比 Perlbal 要好很多。

  作為郵件Proxy 伺服器:Nginx 同時也是一個非常優秀的郵件Proxy 伺服器(最早開發這個產品的目的之一也是作為郵件Proxy 伺服器),Last. fm 描述了成功並且美妙的使用經驗。

  Nginx 是一個安裝非常的簡單,設定檔非常簡潔(還能夠支援perl文法),Bugs非常少的伺服器:Nginx 啟動特別容易,並且幾乎可以做到7*24不間斷運行,即使運行數個月也不需要重新啟動。你還能夠不間斷服務的情況下進行軟體版本的升級。

(更多介紹參照百科,更多使用參照GOOGLE,廣而告之)

二、下載安裝

我們使用nginx-1.7.2版本,下載解壓後放到C:\nginx-1.7.2題)

運行cmd.exe到

有錯誤啊,也不知道啟動成功沒有,去看看日誌吧。

logs裡有出現了兩個記錄檔access.log,error.log, 開啟error.log開到下面提示 

2011/06/16 15:23:55 [emerg] 7136#4040: bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)2011/06/16 15:24:14 [emerg] 6336#7052: bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)

去nginx官網搜了一下原因: View Code

3個原因:

1.防火牆開啟了(確實我的WIN7 windows Firewall開啟了,但是關了後還是不能啟動nginx)

2.80連接埠被佔用了(確實有個預設的網站用的80連接埠,關閉了後再啟動nginx正常了,80後為Nginx預設的配置。需要修改nginx-1.7.2\conf目錄下的nginx.conf。將裡面的

server {
        listen       80;//改為其他數字就可以了 

怎麼看出來的正常的,看一下logs下面是不是多了一個nginx.pid檔案,cmd視窗了輸入

C:\nginx-1.0.4>tasklist /fi "imagename eq nginx.exe"
結果如下:

這時說明已經啟成功了,有兩個進程。按照官方的解釋,nginx是守護進程,其中一個是一直處理事件等待中,當有事件被觸發時,就啟動另外一個進程處理相關請求。

開啟瀏覽器,輸入http://127.0.0.1/。如果上面你連接埠號碼改動過了,假設為3000,那這裡輸入http://127.0.0.1:3000/

訪問成功後可以logs下的access.log看到訪問網站的request資訊 View Code

如果沒有成功可以再查看logs下的error.log原因,以下為其它操作命令

nginx -s stop quick exit
nginx -s quit graceful quit
nginx -s reload changing configuration, starting a new worker, quitting an old worker gracefully
nginx -s reopen reopening log files

三、配置測試

我們在cmd下運行nginx

啟動成功,出錯的話,可以查詢日誌(日誌路徑是設定檔指定的,你可以修改存到其它位置)

關閉所有Nginx所有進程: taskkill /im /f QQ.exe。 這個命令很好用,下面兩個命令有時候無法關閉nginx。
關閉Nginx進程: nginx -s stop / nginx -s quit

載入指定設定檔

C:\server\nginx-1.7.2>start nginx.exe -c conf/default.conf


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.