我在架設好 gitweb 之後,發現就算設定網站只有公司內部 ip 可以連線,但還是太過公開,但是又不想花心力去做帳密系統管理,請教朋友後他建議利用 htpasswd 就能輕鬆達成我的需求。
htpasswd 是 apache 套件附上的一個功能,可以做出基本的使用者認證。
htpasswd 的詳細指令可以參考這篇文章: htpasswd - 管理用於基本認證的用戶文件
產生帳密檔案:
cd /home/git/gitweb
htpasswd -cb 檔名 帳號 密碼
htpasswd -b 其他帳號 密碼
其中參數 c 是建立檔案,只有第一次產生時需要。修改密碼也是一樣的指令,就會覆蓋掉原本檔案內的字串。
設定 nginx :
找到 gitweb 的 server 設定區塊,到 location / 中的最前面加上
location / {
auth_basic "Yoursite Gitweb";
auth_basic_user_file /home/git/gitweb/htpasswd檔名;
...
}
完成後執行 /etc/init.d/nginx restart ,連到 http://gitweb.yoursite.com.tw ,就會出現要求輸入帳號密碼囉!
延伸閱讀: 架設 gitweb with nginx
全站熱搜
留言列表