首頁  >  問答  >  主體

錯誤 - nginx Windows編譯問題

各位好,因為一個專案的需求,需要對NGINX進行修改,部署在WINDOWS環境下。
我現在能夠編譯NGINX成功,在我自己的機器上能夠運行成功。
但現在遇到這麼一個問題,我把編譯好的NGINX放在WINDOWS 2003 SP2上面報錯,錯誤提示如下:

C:\nginx>nginx.exe
Auto configuration failed
1772:error:02001015:system library:fopen:Is a directory:.\crypto\bio\bss_file.c:
126:fopen('e:/openssl/ssl/openssl.cnf','rb')
1772:error:2006D002:BIO routines:BIO_new_file:system lib:.\crypto\bio\bss_file.c
:131:
1772:error:0E078002:configuration file routines:DEF_LOAD:system lib:.\crypto\con
f\conf_def.c:199:

不知道有沒有遇過這種問題?你們都是如何在WINDOWS下編譯的NGINX?
我GOOGLE到的方法大多是在MINGW環境下編譯的。不知道各位還有沒有什麼好的方法?或是有沒有好的VS SOLUTION?
我的EMAIL:xxeaglenet#gmail.com

滿天的星座滿天的星座2712 天前711

全部回覆(2)我來回復

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-16 17:32:24

    這是因為你的伺服器上缺少openssl函式庫導致的,或者說你的函式庫檔案沒有存放在這個位址e:/openssl/ssl/openssl.cnf。因為你編譯的時候已經靜態指定這個路徑為預設的openssl目錄了。

    所以最簡單的方法就是在伺服器上的e:/openssl路徑裝上一個openssl函式庫。

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 17:32:24

    這個問題已經解決了。我重新下載了OPENSSL 0.9.8R版本,然後按照NGINX的預設設定參數啟動enable-tlsext,手動編譯完成。一切都和諧了。

    謝謝@prosper @joyqi 的熱心幫助。

    回覆
    0
  • 取消回覆