現在的網站大部份都要使用 SSL 來進行瀏覽的動作,網站開發也是要 SSL ,所以現在 SSL 己經是一個最基本的要求的一部份。
所以做為一位開發者,要如何在開發的過程也能夠結合 SSL 在 Localhost 呢?? 其實很簡單,但你要準備以下的環境才能夠達到。
[申請網域名,提供一組三級網域名]
[特別說明]
127.0.0.1 是現在您使用「電腦」並不是「對方主機」,這個必須要了解一下。當您設定完成並且生效,就可以使用了 三級網域名.DomainNAME.com 。
不會有人使用「主網域名」來做 127.0.0.1,主網域名大部份都是入口網站對外營運用。當然您可以直接用啦..
[經驗談]
申請 Domain NAME 最好是可以簡單操作、常聽的,別那種小小間 ISP 來申請你的 Domain Name,到時候移轉時找不到人,或是要拿回來使用權,那家廠商己經倒了,還要靠主機房業者來找到業者才能夠移轉。多花點 Domain 的服務費不比 找不到業者 來的好很多...
[申請免費 SSL]
[安裝 SSL 憑證]
C:\OpenSSL-Win64\bin\openssl pkcs12 -export -out [要儲存的位置]\certificate.pfx -inkey [儲存憑證的位置]\private.key -in [儲存憑證的位置]\certificate.crt -certfile [儲存憑證的位置]\ca_bundle.crt
[要儲存的位置] >> 就是將 OpenSSL 轉換完成的檔案要儲存在那裡
[儲存憑證的位置] >> 你申請完並下載的 SSL 憑證在那裡
置換完成並執行,會詢問你是否要有密碼!! 這個密碼是您安裝此憑證會出現輸入的項目,如果不要密碼請按 Enter 鍵就可以了,轉換完成只要在 己轉換成功 的憑證上點二下,就會出現要不要匯入此憑證,匯入時請選擇 [本機電腦] 即可
[設定 IIS 站台並設定 443]
這時候請您設定一個站台,請在站台用滑鼠按右鍵 [新增網站](設定時預設會是80埠),您可以選擇直接 https 並指向您的實體檔案目錄位置即可,站台名稱你可以自己取名這不會影響。大概如下的設定...
這樣子就設定好您的網站了,那你就可以在瀏覽器上輸入你的網址 https://三級網域名.YouDomainName.com/Index.html 就可以看得到支援 SSL 。
[注意事項]
免費的 SSL 憑證只能使用在 [開發應用] 上,如正式對外服務一定要申請正式的 SSL 憑證中心,以上的說明只限制於 [開發應用] 上,千萬別拿公司商譽來開玩笑,相關 SSL Free 請參考以下說明
https://www.inside.com.tw/article/8203-ssl_certificate
[Visual Studio 2017 開啟站台]
[SSL FREE + Domain 使用在那裡??]
使用這方式,我的外部服務商為 國外大型電子商務 ,我接收他的訂單,並取得相關 Request 的資料寫入資訊,再透過整理好的內容,導出相關資料回到 [外部服務商] 接收處理後的結果。以此模式,將可以方便網站型態的程式開發,不用還得透過主機接到資料再分析結果並再處理...
用 DomainName 來做開發優點:
可能得花你一筆錢小錢,來申請你的 Domain name ,但這至少比你使用 https://localhost:xxxx 開發上完整性好很多,展示你的專業可以這麼做 https://專案名稱或是客戶的官網名字.YouDomain.com ,開發完成的專案你可以另外再申請三級網域名,告訴你的客戶你的最新專案進度在 https://客戶官網.YouDomain.com 就可以瀏覽最新的進度了,SSL 不用錢,愛申請多少個都可以。
Domain 指向為 127.0.0.1 任何工程師可以整合與使用,例如申請一個三級網域名 https://Program.YouDomain.com 並給於 SSL FREE 給所有的工程師做為開發的標準也可以,就不用申請一堆。而且不用擔心會有影響,因為執行的過程都是指向 127.0.0.1 = localhost 你現在使用的電腦。
透過 Domain name 你可以在任何機器上開發程式。例如桌機上開發,當你要出外見客戶,帶著你的筆電,透過 git下載你剛才的站台,執行過程,就跟你在桌機上都是一樣的並且支援 SSL 。安裝 SSL 與設定站台的模式都是一樣的,而且轉換完成的 SSL 你也可以用在筆電上 點二下安裝憑證於本機電腦 ,SSL 憑證是認 Domain name 並不是 IP 所以執行上不會有任何 SSL 不能夠使用的情形
SSL FREE 申請與安裝非常的簡單易懂,當三個月SSL憑證要過期,重新再申請並下載 SSLFREE 檔案,透過語法你更可以簡簡單單完成 SSL 轉換,你也可以寫一個常駐程式只要有 SSL 檔案存在某一個目錄,就自動轉換成 IIS 專用檔案。
結合網路硬碟像是 Google , Microsoft 轉換完成的 SSL 憑證透過分享,任何工程師收到點二下這個網站就可以使用了..
看不明白在DNS設定,和後續去SSL FREE 申請這段。
我有一個Domain: iamok.tw
然後我設了一個testssl 127.0.0.1 A
到SSL Free是申請 testssl.iamok.tw 是嗎?
但如果是這樣,在download ssl cert 這步驟,點下去要驗證時,是連到127.0.0.1,是不可能驗證成功的,就不會有憑證可以下載。
我是錯過了那個過程?
Hello eezzz
如您可以操作 iamok.tw 這個 Domain 在申請 SSLFREE 有使用 FTP、手動、DNS 這三個選項,您可以選擇 DNS 驗證方式那您選擇後會出現
Add TXT record with the name/host
__acme-challenge.testssl.iamok.tw
填寫到你的 DNS 申請項目為 TXT 值的內容如下
RH6TI_bRFSf9Fz7P4c1QvZQCPfyq99yMvn5F93crpXw
您可以看我圖示 [申請網域名,提供一組三級網域名] 的圖示,如以 PCHOME 來說我會將 __acme-challenge.testssl.iamok.tw 改成 __acme-challenge.testssl 因為 PCHOME 不接受相同的 Domain Name ,只要這樣子設定好 過一段時間給 DNS UPDATE 再按 [Download SSL Certificate] 就可以出現您的 DNS TXT 參數值己被認可確定有此網址。
如果 DNS TXT 還未生效您會得到
Warning: Your verification URL is not returning the correct contents to our verification servers. The URL looks like it is blocking bots and which inadvertently blocks our servers from receiving the correct content. Contact your host, a professional developer or admin for further help with fixing it.
即表示您的 TXT DNS UPDATE 還未生效。如一切都正確那你就可以得到一個 ZIP 裡面就有憑證了..
好的。原來是以DNS方式申請,我完全搞錯方向了。感謝您這麼詳細的解說。我去試試。