瀏覽標籤:

Windows

[IIS][GitLab] 利用 IIS Reverse Proxy 將 GitLab 加上 Https

最近工作上有個需求要將 GitLab 掛上 SSL 憑證,原本就有一台 Windows Server 在管理所有的 SSL 憑證,於是乎就想到可以利用 IIS Reverse Proxy 的方式將憑證集中管理在這台,這樣管理起來也比較方便。

前置作業

首先需要安裝兩個模組

  1. URL Rewrite
  2. Application Request Routing

安裝 URL Rewrite 的時候有踩到一個地雷,詳情請見 [IIS] Windows Server 2016 安裝 URL Rewrite 憑證失效

開始設定

  1. 建立一個新站台並設定好 SSL 憑證 (由於這邊我只是測試用,所以我自己簽一個自我憑證)

  2. 選擇 URL Rewrite

  3. 選擇 新增規則 -> 反向 Proxy

  4. 選擇 確定 啟用 Proxy

  5. 1 的地方輸入 GitLab 的位置,2 的位置輸入欲對外的 Domain

  6. 當我以為簡單就完成開啟網頁試試時卻噴錯誤給我看


原因是因為 GitLab 有開啟壓縮,但使用了反向 Proxy 無法將已壓縮的檔案進行修改,所以就噴了這個錯誤

  1. 解決方法是在 伺服器變數 做調整

  2. 新增兩個變數分別是 HTTP_ACCEPT_ENCODINGHTTP_X_ORIGINAL_ACCEPT_ENCODING

  3. 編輯輸入規則

  4. 新增兩個伺服器變數,伺服器變數名稱選擇剛剛加入的 HTTP_X_ORIGINAL_ACCEPT_ENCODING,值輸入 {HTTP_ACCEPT_ENCODING}

  5. 我們已經將 HTTP_ACCEPT_ENCODING 放到 HTTP_X_ORIGINAL_ACCEPT_ENCODING 裡面,原本的值就可以清空清空,但因為 UI 不允許輸入空值,所以這邊我就隨便打個值

    如果跟我一樣很在意的話可以去站台底下的 web.config 清空剛剛的值

  6. 終於可以開起來囉 ~

顯示調整

雖然已經可以正常開啟網頁了,但網址還是會顯示錯誤

  1. 新增兩個伺服器變數 HTTP_X_FORWARDED_HOSTHTTP_X_FORWARDED_PROTO
  2. HTTP_X_FORWARDED_HOST 輸入 Domain,HTTP_X_FORWARDED_PROTO 輸入 https
  3. 修改 /etc/gitlab/gitlab.rb 加上這段

 

這樣頁面顯示的網址就正常囉,不過 https://gitlab.exfast.me/profile/active_sessions 這邊顯示的 IP會是 IIS 那台的位址,所以還必須調整 /etc/gitlab/gitlab.rb 加上這段

 

參考資料

  1. How to Configure IIS as a Reverse Proxy for Sonatype Products
  2. IIS with URL Rewrite as a reverse proxy – part 2 – dealing with 500.52 status codes
  3. 如何讓在 Reverse Proxy 之後的網站正常運行 (URL Rewrite)
  4. 如何利用 IIS7 的 ARR 模組實做 Reverse Proxy 機制
  5. Configuring GitLab trusted_proxies and the NGINX real_ip module

[IIS] Windows Server 2016 安裝 URL Rewrite 憑證失效

2016 年的時候我筆記過一篇 [IIS] Windows Server 2016 無法安裝 URL Rewrite !?
想不到現在 2018 年了再次安裝 URL Rewrite 時又遇到新問題,微軟爸爸不要亂放地雷好嗎?

我是從 這邊 下載的 這個版本 安裝時會出現下面這張圖的狀況

經過千辛萬苦的餵狗後發現是微軟在 2018/09/12 發布的版本帶了時間戳,而這個時間戳卻造成無法安裝的問題,這邊我有找到一個舊版本給大家急救一下 點我下載 (密碼:https://blog.exfast.me/)

參考資料:
URL rewrite installation failing due to signature verification failure

[Docker][NetCore] Win7 可以在 Docker 下 Debug ASP.NET Core 嗎?

今天心血來潮想試試看可不可以把 ASP.NET Core 部屬在 Docker 裡面 Debug,但我的測試機是 Win7 無法安裝新版 Docker for Windows 於是乎抱著僥倖下載 Docker Toolbox 來試試看
兩者最大差異在於 Docker Toolbox 是運行在 Oracle VM VirtualBox,而 Docker for Windows 則是可以在微軟的虛擬化技術 Hyper-V 底下運行

肉身測試開始

如果想要讓現有專案支援 Docker 的話只要對 專案右鍵 -> 加入 -> Docker Support 強大的 Visual Studio 2017 就會搞定基礎設定

這邊的話要選擇 Linux 上面的 Windows 是給 Docker for Windows 選的
接著 Visual Studio 就會幫你下載與設定一些基本環境

接著直接按 F5 執行偵錯模式
噹噹… 他竟然說我沒有安裝 dotnet sdk

 

 

翻了很久才翻到一篇文章 Docker debugging for ASP.NET Core application is not working 國外也有個勇者想在 Win7 利用 Docker 來 Debug ASP.NET Core

最後被加上了 Closed - Won't Fix 的 Tag 看來這個問題應該是不會修正了

結論

想要在 Docker 上玩 ASP.NET Core 還是乖乖用 Win10 吧
哪天有空了來試試看在 Win10 安裝 Docker 玩玩看
不知道會不會又有其他地雷引爆

[Windows] 更新 Visual Studio 2017 後偵錯模式會自己停止?

最近更新了 Visual Studio 2017 到最新版本,發現在debug的時候 IIS Express 總是被停止運行,再找 bug 的時候發生這件事情實在是很惱人的一件事情,拜了 google 大神後發現微軟竟然在更新的時候偷偷把這個設定啟用,這實在是太坑了 !!

解決方法:將下面兩張圖的勾勾都取消就可以恢復正常囉。

[Windows] 瀏覽器首頁被 hao123 綁架

前幾天再找百度乾淨雲的時候不小心中了hao123了
自從用了hao123 再也沒被奇怪的網站綁架了呢 !!! 才不是勒 !!!
稍微看了一下原來是瀏覽器的開啟路徑被動了手腳
本來以為很簡單…但最後費了一些力氣才終於解決…

 

病毒對於我們資訊人來說還不就是登入檔or排程or執行檔or註冊檔or服務之類的東西,沒想到這次我碰壁了,竟然在每個地方都找不到任何蹤跡 !!!
而我的瀏覽器連結就這樣定時的被修改路徑…

身為一個資訊人馬上就發揮了看家本領Google求大神了 !!
發現原來Win還有WMI Event這個鬼東西
也藏太深了吧 !!!  ( 受教了

解決方法如下:

  1. 下載 WMITools (官方網址掛了,這裡我有上傳備份,解壓縮密碼:https://exfast.me/)
  2. 安裝後右鍵使用管理員開啟
  3. 點選左上角
  4. 不用改直接按OK
  5. 直接按OK
  6. 兇手就是你啦 !!!!
    對著這個王八蛋點右鍵刪除吧 !!
  7. 最後清除所有lnk的hao網址即可 (圖片中為RogueKiller免費版)

 

參考:

  1. 中招了——WMI脚本劫持浏览器
  2. 瀏覽器首頁以「篡改瀏覽器捷徑方式」被綁架 – 復原雜記

[Windows] Win10 關閉自動更新

Win10的擾人自動更新讓我很頭痛,試了很多方法只有這個有效,不過還是會不定期地提醒你更新,但至少不會幫你更新了QQ

  1. 首先在桌面同時按下 win+R 叫出 執行 視窗
    並輸入 gpedit.msc 按 確定
  2. 電腦設定 → 系統管理範本 → Windows 元件 → Windows Update → 設定自動更新
    2017-01-16-23_37_30-dev_win10-vmware-workstation
  3. 完成。

 

參考:

  1. Win10 如何永久關閉 Windows Update 自動更新

[Windows] 開機時自動啟用數字鍵

不知為何Win10開機預設都沒有啟用數字鍵,變成每次開機都要先按一下NumLock感覺有點麻煩,今天終於受不了找了兩個方法解決。

方法如下:

  • 修改註冊檔
    1. Win+R輸入regedit開啟登陸編輯器
    2. 找到\HKEY_USERS\.DEFAULT\Control Panel\Keyboard
    3. InitialKeyboardIndicators修改為80000002
    4. 重開機即可。
  • 重新開機後再登入畫面先開啟NumLock,不登入直接在重開機一次即可。

來源:

  1. 技巧|Windows 10筆電開機時自動啟用數字鍵
  2. NB win10如何使開機後於登入輸入密碼前num lock on

[IIS] Windows Server 2016 無法安裝 URL Rewrite !?

今天興致來在VM上灌了2016打算把Wordpress移植過去的時候發現,無法安裝URL Rewrite !!!!
我明明就已經7.0以上了阿,我書讀得少不要唬爛我啊 !!!
2016-12-16-20_01_04-winserver_2016-vmware-workstation

 

餵狗了一下才發現,原來不只我有這個問題,解法如下:

  1. Win+R輸入下方指令打開註冊檔
  2. 找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\MajorVersion
  3. 將數值修改為 7 再進行安裝!!
    2016-12-16-20_02_19-winserver_2016-vmware-workstation
  4. 就可以順利安裝囉 !!
    2016-12-16-20_02_44-winserver_2016-vmware-workstation
  5. 安裝完記得改回去嘿,避免發生不必要的錯誤 !!

 

 

來源:https://forums.iis.net/t/1225087.aspx

[Windows] 在 Windows Server 2012 R2 上安裝 PPTP Server

有時候需要VPN來遠端使用一些本地服務,或是需要跳板IP的時候,就需要VPN這個服務啦,先前有整理過Linux的VPN安裝教學,這次來整理一下Windows的囉!

 

安裝腳色

  1. 遠端存取打勾
    螢幕截圖 2016-06-11 16.15.37
  2. 無須異動直接下一步
    螢幕截圖 2016-06-11 16.15.51
  3. 下一步
    螢幕截圖 2016-06-11 16.16.01
  4. DirectAccess與VPN(RAS)打勾
    螢幕截圖 2016-06-11 16.16.10
  5. 會挑出視窗詢問是否安裝下列功能
    螢幕截圖 2016-06-11 16.16.16
  6. 路由打勾
    螢幕截圖 2016-06-11 16.16.20
  7. 點擊安裝
    螢幕截圖 2016-06-11 16.16.35
  8. 安裝過程
    螢幕截圖 2016-06-11 16.16.49

 

[WordPress] 在Windows Server 2012 R2中使用 Disqus Comment System 連結帳號失敗

最近手賤把Disqus解除帳號連結,卻發現怎麼樣都無法連結帳號,一直顯示Unable to connect to the Disqus API servers如下:

01

拜了Google大神很久都找不到原因,無論重新安裝Windows Server還是使用國外HostGator Web Hosting(Windows)都發生同樣錯誤,忽然想起之前安裝這個外掛的時候也有發生這個問題,後來改用Linux後就正常了,於是乎懷疑是否是作業系統的問題,立即開了虛擬機安裝一台Linux測試,在Linux底下沒有做什麼特別的設定,按下登入馬上就連結成功到Disqus。

個人猜測在Windows裡安裝的php套件少了什麼東西,導致外掛無法正常運作,雖然切回Windows後無法同步留言回Wordpress,但是此外掛還是有正常在運作中可以正常留言,那就先這樣結案吧!

  • 1
  • 2