Windows 部署 Gerrit 與 Apache24 配置

Windows 部署 Gerrit 與 Apache24 并配置反向代理

準備工作

  1. 下載并安裝 Java JDK
    • 確保配置 JAVA_HOME 環境變量

博主這里安裝openjdk21
https://jdk.java.net/archive/
在這里插入圖片描述

  1. 下載所需軟件
    • Apache24:https://httpd.apache.org/download.cgi
      在這里插入圖片描述
    • Gerrit:https://www.gerritcodereview.com/3.12.html
      在這里插入圖片描述

安裝 Apache24

  1. 將下載的 Apache24 解壓到合適的目錄(例如:C:\Apache24

  2. Apache24\conf路徑下,用記事本軟件打開“httpd.conf”文件
    修改“Define SRVROOT”為安裝目錄
    在這里插入圖片描述

  3. 測試 Apache 是否能正常運行

    cd C:\Apache24\bin
    httpd.exe -k install -n apache
    httpd.exe -k start
    

計算機服務中出現apache的服務,可以手動啟動
4. 打開瀏覽器訪問 http://localhost,如能看到 “It works!” 則表示安裝成功

安裝 Gerrit

  1. 創建 Gerrit 安裝目錄(例如:C:\gerrit

  2. 打開命令提示符,執行 Gerrit 安裝命令

    java -jar gerrit-<version>.war init --batch -d C:\gerrit
    

可以修改-d后的路徑,修改安裝位置

  1. 配置 Gerrit(在安裝過程中或修改 C:\gerrit\etc\gerrit.config
    注意替換canonicalWebUrl 中的ip
[gerrit]basePath = gitcanonicalWebUrl = http://10.*.37.10:8080/serverId = 8a656c4b-3c51-4dcf-af46-de35d2770449
[container]javaOptions = "-Dflogger.backend_factory=com.google.common.flogger.backend.log4j.Log4jBackendFactory#getInstance"javaOptions = "-Dflogger.logging_context=com.google.gerrit.server.logging.LoggingContext#getInstance"user = AdministratorjavaHome = D:\\software\\jdk\\openjdk-21.0.1_windows-x64_bin\\jdk-21.0.1
[index]type = lucene
[auth]type = HTTP
[receive]enableSignedPush = false
[sendemail]smtpServer = localhost
[sshd]listenAddress = *:29418
[httpd]listenUrl = http://*:8080/
[cache]directory = cache

配置 Apache 反向代理

  1. 啟用 Apache 必要模塊,編輯 C:\Apache24\conf\httpd.conf,確保以下模塊被啟用:

    Define SRVROOT "D:\Apache24"
    ...
    ServerName 10.*.37.10:80
    ...
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule negotiation_module modules/mod_negotiation.so
    LoadModule authn_file_module modules/mod_authn_file.so
    LoadModule auth_basic_module modules/mod_auth_basic.so
    LoadModule authz_user_module modules/mod_authz_user.so
    
  2. httpd.conf 末尾添加反向代理配置:
    注意替換gerrit.passwd路徑為真實路徑

     <VirtualHost *:80>ServerName localhostProxyRequests OffProxyVia OffProxyPreserveHost On<Proxy *:80>Require all granted</Proxy>  <Location "/login/">AuthType BasicAuthName "Gerrit Code Review"Require valid-userAuthBasicProvider fileAuthUserFile F:/Gerrit/etc/gerrit.passwd</Location>AllowEncodedSlashes OnProxyPass / http://localhost:8080/
    
```

配置賬號密碼認證

  1. 創建密碼文件(需要使用 Apache 的 htpasswd 工具)
    -c參數為創建新的passwd文件

    cd C:\Apache24\bin
    htpasswd.exe -c C:\Apache24\conf\gerrit.passwd <用戶名>
    

    執行后會提示輸入密碼,這將創建第一個用戶

  2. 添加更多用戶(注意去掉 -c 參數,否則會覆蓋現有文件)

    htpasswd.exe C:\Apache24\conf\gerrit.passwd <新用戶名>
    

啟動服務

  1. 重啟 Apache 服務
    cd C:\Apache24\bin
    httpd.exe -k restart
    

在這里插入圖片描述
2. 啟動 Gerrit 服務

C:\gerrit\bin\gerrit.sh start
  1. 訪問 Gerrit:打開瀏覽器訪問 http://localhost,使用你創建的賬號密碼登錄
    在這里插入圖片描述

常見問題解決

  1. 端口沖突:如果 80 端口被占用,可以修改 Apache 的監聽端口(在 httpd.conf 中修改 Listen 指令)

  2. 權限問題:確保 Gerrit 和 Apache 有足夠的權限訪問各自的目錄

  3. 服務啟動失敗:查看 Apache 的錯誤日志(C:\Apache24\logs\error.log)和 Gerrit 的日志(C:\gerrit\logs\error_log)尋找線索

  4. 如果無法通過 http://localhost 訪問 Gerrit,可以先測試直接訪問 Gerrit 端口 http://localhost:8081 確認 Gerrit 本身是否正常運行

完成以上步驟后,你應該已經成功在 Windows 上部署了 Gerrit 并通過 Apache 實現了反向代理和賬號密碼認證。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/95911.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/95911.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/95911.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從 Excel 趨勢線到機器學習:拆解 AI 背后的核心框架?

引言&#xff1a;你其實早就 “玩轉” 過機器學習&#xff1f;提到 “機器學習”&#xff0c;你是不是第一時間聯想到復雜的代碼、密密麻麻的公式&#xff0c;還有那些讓人頭暈的 “算法”“模型”“訓練” 術語&#xff1f;仿佛它是高高在上的技術&#xff0c;離我們的日常無比…

Lenovo聯想YOGA Pro 16 IAH10 2025款筆記本電腦(83L0)開箱狀態預裝OEM原廠Win11系統

適用機型(MTM)&#xff1a;【83L0】 鏈接&#xff1a;https://pan.baidu.com/s/1tDpeBb93t1u0XIgqAZ3edg?pwdqy2r 提取碼&#xff1a;qy2r 聯想原裝系統自帶所有驅動、出廠主題壁紙、系統屬性聯機支持標志、系統屬性專屬LOGO標志、Office辦公軟件、聯想瀏覽器、電腦管家、…

Android 開發 - 一些畫板第三方庫(DrawBoard、FingerPaintView、PaletteLib)

一、DrawBoard 1、Dependencies 模塊級 build.gradle implementation com.github.jenly1314:drawboard:1.1.02、Test &#xff08;1&#xff09;Activity Layout activity_draw_board.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout …

捷多邦揭秘超厚銅板:從制造工藝到設計關鍵環節?

一、超厚銅板制造工藝要點超厚銅板&#xff08;3oz 及以上&#xff09;的制造工藝對精度和穩定性要求嚴苛&#xff0c;核心環節需突破多重技術壁壘。蝕刻工藝中&#xff0c;因銅箔厚度達 105μm 以上&#xff0c;需采用高濃度酸性蝕刻液&#xff08;氯化銅濃度控制在 180-220g/…

【MYSQL | 高級篇 MyCat實現分庫分表】

摘要&#xff1a;本文圍繞分庫分表展開&#xff0c;先分析單庫性能瓶頸&#xff0c;介紹垂直與水平拆分策略及實現技術&#xff0c;再詳述 MyCat 中間件的概述、環境準備、目錄結構&#xff0c;講解其入門配置與測試&#xff0c;深入說明核心配置文件&#xff0c;最后演示垂直和…

Docker部署Drawnix開源白板工具

Drawnix簡介 Drawnix 是一款開源的在線白板工具&#xff08;SaaS&#xff09;&#xff0c;集思維導圖、流程圖繪制、自由畫圖等多種功能于一體&#xff0c;支持協作與插件擴展&#xff0c;適用于個人創作、團隊協作和遠程辦公場景。它完全免費且開源&#xff0c;提供豐富的編輯…

Griffin|增強現實數據集|無人機數據集

Griffin|增強現實數據集|無人機數據集 數據來源&#xff1a;huggingface 百度網盤 構建方式 Griffin數據集的構建采用了模塊化架構&#xff0c;結合了CARLA和AirSim平臺&#xff0c;通過模擬真實世界中的無人駕駛環境和無人機動態&#xff0c;收集了超過30,000幀圖像數據&am…

力扣.1054距離相等的條形碼力扣767.重構字符串力扣47.全排列II力扣980.不同路徑III力扣509.斐波那契數列(記憶化搜索)

目錄 力扣.1054距離相等的條形碼 力扣767.重構字符串 力扣47.全排列II 力扣980.不同路徑III 力扣509.斐波那契數列&#xff08;記憶化搜索) 力扣.1054距離相等的條形碼 是否策略正確 但是假如 1 2 2 此時 1_2 此時中間只能填寫2&#xff0c;但是就不對了&#xff0c;所…

「docker」二、3分鐘快速理解docker核心要素

上一節中我們知道docker的作用&#xff0c;這節我們介紹一下docker的要素。 鏡像 docker的核心要素里面有個叫鏡像&#xff08;images&#xff09;的概念&#xff0c;鏡像的作用就類似我們安裝虛擬機用到的iso鏡像文件。鏡像里包含了我們要運行的應用&#xff0c;如&#xff…

搭建基于 Solon AI 的 Streamable MCP 服務并部署至阿里云百煉

一、快速搭建 Solon 項目&#xff0c;引入 Solon AI 1. 開發環境準備 JDK 8 或以上版本。Maven 3.8.6 或以上版本。通義千問 API Key&#xff08;用于模型調用&#xff09;。 2. 創建名為 mcp-server-demo 的項目 創建時選擇 Archetype 為 Solon AI&#xff08;可以減少些活&am…

免費的SSL和付費SSL 證書差異

免費的 SSL 和付費的 SSL&#xff08;TLS 證書&#xff09;本質上提供的加密能力是一樣的&#xff0c;因為 SSL/TLS 協議本身是開放標準&#xff0c;核心加密算法不會因為是否收費而不同。主要區別在于以下幾個方面&#xff1a;&#x1f511; 1. 加密強度免費 SSL&#xff1a;一…

代碼隨想錄算法訓練營第六天 -- 字符串1 || 344.反轉字符串I / 541.反轉字符串II / kamacoder54.替換數字--第八期模擬筆試

代碼隨想錄算法訓練營第六天 -- 字符串1 || 344.反轉字符串I / 541.反轉字符串II / kamacoder54.替換數字--第八期模擬筆試344.反轉字符串I思路541.反轉字符串II題目理解解題思路邊界細節reverse()函數的實現[kamacoder54.替換數字 -- 第八期模擬筆試](https://kamacoder.com/p…

計算機視覺——光流法

系列文章目錄 本系列開篇文章&#xff0c;暫時沒有目錄啦&#xff5e; 文章目錄系列文章目錄前言一、問題假設二、方程推導三、計算Ix,Iy,ItI_x,I_y,I_tIx?,Iy?,It?四、計算光流u,vu,vu,v4.1 傳統算法Lucas-Kanade算法五、孔徑問題5.1 直觀理解5.2 數學角度5.3 解決方法總結…

前端安全攻防:XSS, CSRF 等防范與檢測

前端安全攻防&#xff1a;XSS, CSRF 等防范與檢測在Web應用日益普及的今天&#xff0c;前端安全已經成為一個不容忽視的重要環節。隨著攻擊技術的不斷演進&#xff0c;各種前端安全漏洞&#xff08;如跨站腳本攻擊 XSS、跨站請求偽造 CSRF 等&#xff09;層出不窮&#xff0c;它…

03OpenCV圖像處理

參考課程&#xff1a; 【黑馬程序員 OpenCV入門教程】 [https://www.bilibili.com/video/BV1Fo4y1d7JL] ZZHow(ZZHow1024) 1.1幾何變換 圖像縮放 對圖像的大小進行調整&#xff0c;即使圖像放大或縮小 cv2.resize(src, dsize, fx0, fy0, interpolationcv2.INTER_LINEAR)參數…

UE5 C++ 第三方動態庫的使用

一. 首先要拷貝對應的 第三方庫 bin里有dll動態庫&#xff0c;include里有動態庫需要的頭文件。 二.在Target.cs里&#xff0c;進行設置 頭文件前面的路徑為公共路徑 設置需要一起打包的三方庫文件 三.加載這個庫 FPlatformProcess::GetDllHandle將他解析為 任意類型&#x…

C++進階——多態

? ? ? ? ? づ?ど &#x1f389; 歡迎點贊支持&#x1f389; 個人主頁&#xff1a;勵志不掉頭發的內向程序員&#xff1b; 專欄主頁&#xff1a;C語言&#xff1b; 文章目錄 前言 一、多態的概念 二、多態的定義及實現 2.1、多態的構成條件 &#xff08;1&#xff09;虛函…

Swift 語法學習指南 - 與 Kotlin 對比

Swift 語法學習指南 - 與 Kotlin 對比 本指南專為有 Android/Kotlin 開發經驗的開發者設計&#xff0c;通過對比學習快速掌握 Swift 語法 目錄 語言基礎對比變量與常量數據類型函數定義類與結構體繼承與協議可選類型集合類型控制流閉包與Lambda擴展與Extension錯誤處理內存管理…

嵌入式C語言筆記十七——構造數據類型

一.結構體&#xff1a;1.類型定義&#xff1a;struct 結構體名 {數據類型1 成員變量1;數據類型2 成員變量2;數據類型3 成員變量3;... };struct student {char name[32];char sex;int age;int score; };2.結構體變量定義&#xff1a;存儲類型 數據類型 變量名;3.結構體元素初始化…

深入實踐G1垃圾收集器調優:Java應用性能優化實戰指南

深入實踐G1垃圾收集器調優&#xff1a;Java應用性能優化實戰指南 一、技術背景與應用場景 隨著微服務和海量并發請求的普及&#xff0c;Java應用在生產環境中對低延遲和高吞吐的需求日益顯著。傳統的CMS和Parallel GC 在大內存場景下常出現Full GC 停頓時間長、吞吐下降等問題…