1. 程式人生 > >SVN篇之Windows XP+apache+SVN配置及許可權管理

SVN篇之Windows XP+apache+SVN配置及許可權管理

配置Apache
1.         在windows下安裝Apache http server(apache_2.0.55-win32-x86-no_ssl.msi)

執行Apache http server(apache_2.0.55-win32-x86-no_ssl.msi)安裝程式,出現如下介面:


2.         出現Apache HTTP Server 2.0.55的安裝嚮導介面,點“Next”繼續:


3.         確認同意軟體安裝使用許可條例,選擇“I accept the terms in the license agreement”,點“Next”繼續:


4.         將Apache安裝到Windows上的使用須知,請閱讀完畢後,按“Next”繼續


5.         設定系統資訊,在Network Domain下填入您的域名(比如:goodwaiter.com),在Server Name下填入您的伺服器名稱(比如:www.goodwaiter.com,也就是主機名加上域名),在Administrator's Email Address下填入系統管理員的聯絡電子郵件地址(比如:[email protected]),上述三條資訊僅供參考,其中聯絡電子郵件地址會在當系統故障時提供給訪問者,三條資訊均可任意填寫,無效的也行。下面有兩個選擇,圖片上選擇的是為系統所有使用者安裝,使用預設的80埠,並作為系統服務自動啟動;另外一個是僅為當前使用者安裝,使用埠8080,手動啟動。

我在此以自己的機器為伺服器設定network Domain(127.0.0.1),Server Name(127.0.0.1),port選擇第一項設定為80(注意:如果你裝了IIS需要將IIS的埠設定成非80埠或者選擇apache埠為8080埠)一般選擇如圖所示。按“Next”繼續。


6.         選擇安裝型別,Typical為預設安裝,Custom為使用者自定義安裝,我們這裡選擇Custom,有更多可選項。按“Next”繼續


7.         出現選擇安裝選項介面,如圖所示,左鍵點選“Apache HTTP Server 2.0.55”,選擇“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下屬子部分內容,全部安裝在本地硬碟上”。點選“Change...”,手動指定安裝目錄。


我這裡選擇安裝在“D:/Apache”,各位自行選取了,一般建議不要安裝在作業系統所在盤,免得作業系統壞了之後,還原操作把Apache配置檔案也清除了。選“OK”繼續。


返回剛才的介面,選“Next”繼續。


8.         確認安裝選項無誤,如果您認為要再檢查一遍,可以點“Back”一步步返回檢查。點“Install”開始按前面設定的安裝選項安裝。


9.         正在安裝介面,請耐心等待,直到出現下面的畫面。


10.     安裝嚮導成功完成,這時右下角狀態列應該出現了下面的這個綠色圖示,表示Apache服務已經開始執行,按“Finish”結束Apache的軟體安裝


11.     我們來熟悉一下這個圖示,很方便的,在圖示上左鍵單擊,出現如下介面,有“Start(啟動)”、“Stop(停止)”、“Restart(重啟動)”三個選項,可以很方便的對安裝的Apache伺服器進行上述操作。


12.     好了現在我們來測試一下按預設配置執行的網站介面,在IE位址列打“http://127.0.0.1”,點“轉到”,就可以看到如下頁面,表示Apache伺服器已安裝成功。


現在開始配置Apache伺服器,使它更好的替我們服務,事實上,如果不配置,你的安裝目錄下的Apache2/htdocs資料夾就是網站的預設根目錄,在裡面放入檔案就可以了。這裡我們還是要配置一下,有什麼問題或修改,配置始終是要會的,如圖所示,“開始”、“所有程式”、“Apache HTTP Server 2.0.55”、“Configure Apache Server”、“Edit the Apache httpd conf Configuration file”,點選開啟。


XP的記事本有了些小變化,很實用的一個功能就是可以看到檔案內容的行、列位置,按下圖所示,點“檢視”,勾選“狀態列”,介面右下角就多了個標記,“Ln 78, Col 10”就表示“行 78,列 10”,這樣可以迅速的在檔案中定位,方便解說。當然,你也可以通過“編輯”,“查詢”輸入關鍵字來快速定位。每次配置檔案的改變,儲存後,必須在 Apache伺服器重啟動後生效,可以用前面講的小圖示方便的控制伺服器隨時“重啟動”。


現在正式開始配置Apache伺服器,“Ln 228”,或者查詢關鍵字“DocumentRoot”(也就是網站根目錄),找到如下圖所示地方,然後將""內的地址改成你的網站根目錄,地址格式請照圖上的寫,主要是一般檔案地址的“/”在Apache裡要改成“/”。


“Ln 253”,同樣,你也可以通過查詢“<DIRECTORY”來定位,以後不再說明,將""內的地址改成跟DOCUMENTROOT的一樣。< P>


“Ln321”,DirectoryIndex(目錄索引,也就是在僅指定目錄的情況下,預設顯示的檔名),可以新增很多,系統會根據從左至右的順序來優先顯示,以單個半形空格隔開,比如有些網站的首頁是index.htm,就在游標那裡加上“index.htm ”檔名是任意的,不一定非得“index.html”,比如“test.php”等,都可以。


這裡有一個選擇配置選項,以前可能要配置,現在好像修正過來了,不用配置了,就是強制所有輸出檔案的語言編碼,html檔案裡有語言標記(,這個就是設定文件語言為gb2312)的也會強制轉換。如果開啟的網頁出現亂碼,請先檢查網頁內有沒有上述 html語言標記,如果沒有,新增上去就能正常顯示了。把“# DefaultLanguage nl”前面的“# ”去掉,把“nl”改成你要強制輸出的語言,中文是“zh-cn”,儲存,關閉。


好了,簡單的Apache配置就到此結束了,現在利用先前的小圖示重啟動,所有的配置就生效了,你的網站就成了一個網站伺服器,如果你載入了防火牆,請開啟80或8080埠,或者允許Apache程式訪問網路,否則別人不能訪問。如果你有公網IP(一般ADSL或電話撥號上網的都是),就可以邀請所有能上網的朋友訪問使用http://你的IP地址(IP地址查詢可訪問http://www.goodwaiter.com,查詢內容內即是)你的網站了;如果你沒有公網IP,也可以把內網IP地址告訴區域網內的其它使用者,讓他們通過http://你的內網IP地址,訪問你的網站。

配置Subversion
Subversion有兩種執行方式,一種是基於Apache Http Server,另外一種是Subversion Standalone Server。下面我講解的是基於Apache Http Server的Subversion,這樣做幾個好處:A.能使用WebDAV協議。B.能使用瀏覽器作為客戶端工具瀏覽原始碼倉庫。C.可以很容易的支援到SSPI(Windows域認證)和LDAP(AD?),這些都是Apache本身就支援的。D.能得到比較完善的Apache安全認證系統,比如SSL加密連線。

1.         安裝Subversion(svn-1.2.3-setup.exe)安裝路徑為:D:/Subversion下

2.         檢查d:/apache/apache2/modules下是不是已經有了mod_dav_svn.so和mod_authz_svn.so,libdb42.dll這3個檔案,如果沒有,從D:/Subversion/bin下複製這3個到d:/apache/apache2/modules。如圖:


3.         搜尋d:/apache/apache2/conf/httpd.conf配置檔案中的

LoadModule dav_svn_module "d:/Subversion/bin/mod_dav_svn.so"

LoadModule authz_svn_module "d:/Subversion/bin/mod_authz_svn.so"

LoadModule dav_fs_module modules/mod_dav_fs.so

把前面的註釋#去掉,如圖:


注意:

請先安裝Apache,然後再安裝Subversion,在安裝Subversion過程中它會自動拷貝相應檔案到相應目錄中,並且修改http.conf檔案,然後重新啟動apache服務使修改生效。但是我發現現在這個版本的Subversion安裝檔案可能有個bug,apache的http.conf的配置檔案中#LoadModule dav_fs_module modules/mod_dav_fs.so註釋沒有去掉,所以大家還是小心檢查一下。如果你是先安裝的Subversion,然後再安裝的Apache的,那麼上述的步驟一個也不能漏,都需要自己手動完成。

4.         開啟d:/apache/apache2/conf/httpd.conf配置檔案在末尾處加入以下引數:

<Location /svn>

DAV svn #指定以SVN訪問

SVNPath d:/svndata/test #指定根目錄位置,此時只要輸入http://127.0.0.1/svn就可以直接訪問

AuthType Basic

AuthName "Windy SVN"

AuthUserFile d:/svndata/test/passwd #指定使用者認證的檔案位置

AuthzSVNAccessFile d:/svndata/test/conf/authz #指定授權認真的檔案位置

Require valid-user

</Location>

5.         建立倉庫
開啟CMD命令列介面,"開始" -> "執行" -> "cmd" -> "回車"
C:/Documents and Settings/administrator> d:   //進入D盤(因為我們要在D盤下建立倉庫)
D:/> md svndata   //建立一個名叫svndata的目錄
D:/> cd D:/Subversion/bin //進入subversion/bin目錄
D:/Subversion/bin > svnadmin create d:/svndata/test   //用svnadmin命令建立名為test的倉庫(這條命令成功後,在test下會出現很多資料夾和檔案)

D:/Subversion/bin >cd/ //退出到D盤根目錄
D:/> cd D:/Apache/Apache2/bin   //進入apache/bin目錄

建立使用者

l 使用MD5加密,建立使用者和passwd檔案(passwd由apache中的htpasswd建立)
D:/ /Apache/Apache2/bin > htpasswd -cm d:/svndata/test/passwd user1   //用htpasswd命令建立第一個使用者(user1),同時生成密碼認證檔案,c引數為create,m引數為MD5加密方式
New password: ******
Re-type new password: ******
Adding password for user user1   //加入使用者成功
C:/Program Files/Apache Group/Apache2/bin> htpasswd -m d:/svndata/test/passwd user2   //用htpasswd命令建立第二個使用者(user2),注意如果在這時加入c引數會覆蓋掉之前建立的使用者及檔案。
New password: ******
Re-type new password: ******
Adding password for user user2   //加入使用者成功

l 直接在apache配置檔案中指定passwd使用者認證檔案(passwd可以事先在passwd中建立)

開啟d:/apache/apache2/conf/httpd.conf配置檔案在末尾處修改以下引數:

<Location /svn>

DAV svn

SVNPath d:/svndata/test

AuthType Basic

AuthName "Windy SVN"

AuthUserFile d:/svndata/test/conf/passwd

AuthzSVNAccessFile d:/svndata/test/conf/authz

Require valid-user

</Location>
重新啟動apache,進行測試。
用IE開啟http://localhost/svn,這時應該可以看到

Subversion許可權管理配置
以前面的配置為標準引用一個實際的例子:

廈門央瞬公司是一家電子元器件裝置供應商,其中有個ARM部門,專門負責ARM晶片的方案設計、銷售,並在北京、上海各設立了一個辦事處。對於工作日誌,原先採用郵件方式發給經理,但是這種方式有個缺點,那就是不具備連續性,要看以前的日誌必須一封一封郵件去檢視,很麻煩。於是就想到利用 Subversion, 讓員工在自己電腦上編輯日誌,然後利用svn傳送回來,既方便員工自己編寫日誌,又方便對日誌的歸檔處理,而且提交日誌的時候只需要執行一下 svn commit 即可,比傳送郵件還要簡單的多。

部門文件的目錄結構如下::

test                部門名稱
    ├─diary           工作日誌目錄
    │ ├─headquarters    總部工作日誌目錄
    │ ├─beijing         北京辦日誌目錄
    │ └─shanghai        上海辦日誌目錄
    ├─ref             公司公共檔案參考目錄
    └─temp            臨時檔案目錄

人員情況

- morson,公司總經理,不習慣使用電腦,更喜歡傳統的紙與筆,以及面對面的交流
- michael,arm事業部的部門經理,沒事的時候喜歡弄點兒新技術,用svn來管理日誌,就是他想出來的主意
- scofield,北京辦人員,老員工,為人油滑難管
- lincon,上海辦人員,老員工,大老實人一個
- linda,總部協調員、祕書,文筆不錯,長得也不錯
- rory,微控制器技術員,技術支援

訪問許可權需求分析

- 允許總經理、部門經理讀取所有檔案。順便給他們開放寫許可權,以便體現對他們職位的尊重,雖然對於某些檔案來說,他們若擁有“寫”許可權其實也沒什麼用處
- 除部門經理外,所有其他人員,均只能看到本辦事處人員工作日誌
- 不允許匿名訪問
- ref目錄只允許經理和祕書讀寫,對其他人只讀
- temp目錄人人都可以隨意讀寫

在伺服器端d:/svndata/test/conf配置svnserve.conf

[general]
    password-db = passwd.conf
    anon-access = none
    auth-access = write
    authz-db = authz.conf
在伺服器端d:/svndata/test/conf配置passwd.conf進行使用者建立

[users]
    morson = ShowMeTheMoney
    michael = mysecretpassword
    scofield = hellolittilekiller
    lincon = asyouknows111
    rory = 8809117
    linda = IlikeWorldCup2006
在伺服器端d:/svndata/test/conf配置authz.conf進行使用者建立

[groups]

g_vip = morson

g_manager = michael

g_beijing = scofield

g_shanghai = lincon

g_headquarters = rory, linda

g_docs = linda

[/]

@g_manager = rw

* = r

[/diary/headquarters]

@g_manager = rw

@g_headquarters = rw

@g_vip = r

* =

[/diary/beijing]

@g_manager = rw

@g_beijing = rw

@g_vip = r

* =

[/diary/shanghai]

@g_manager = rw

@g_shanghai = rw

@g_vip = r

* =

[/ref]

@g_manager = rw

@g_docs = rw

* = r

[/temp]

* = rw

Subversion倉庫的訪問
這樣SVN的配置許可權設定完畢,如果你想checkout伺服器SVN的檔案,你還需要開啟svnserver服務

開啟server服務

執行命令cmd,進入命令提示符中

C:/Documents and Settings/administrator> d:   //進入D盤(因為我們要在D盤下建立倉庫)
D:/> cd D:/Subversion/bin >svnserver –d –r d:/svndata/test //啟動svnserver服務

現在你只需要使用客戶端的checkout命令,然後位址列中輸入svn://127.0.0.1/就可以獲取伺服器SVN的內容

相關推薦

SVNWindows XP+apache+SVN配置許可權管理

配置Apache1.         在windows下安裝Apache http server(apache_2.0.55-win32-x86-no_ssl.msi) 執行Apache http server(apache_2.0.55-win32-x86-no_ssl.m

深度學習windows python faster rcnn 配置demo執行

寫這篇文章主要是針對深度學習零基礎的新手,因為我也是新手,在配置環境這一塊花了我很大的心血,網上的資料很多都只是說配置,然後直接執行就完了,可是對於我這樣的新手在配置的過程中會遇見各種各樣的問題,所以在此給大家把我所遇到的問題總結出來,以免後續的人少走彎路,不廢

Spring Cloud 應用 Spring Cloud Config(配置中心)

為了方便儲存,轉自:https://blog.csdn.net/hubo_88/article/details/80692156 從前幾篇文章中我們就可以看出,在分散式系統中,服務數量會很多,如果要修改服務的配置檔案,會很麻煩,這個時候,我們想把配置檔案放在一個地方統一管理,實時更新,Sprin

驅動開發環境Windows XP DDK2600,VC++ 6.0, Driver Studio 3.2

神祕的驅動開發,神祕的WINDOWS核心,是什麼把這些搞得這麼神祕呢? 搭Windows驅動開發平臺就搭了兩天,歷經各種找不到,搞不通。我還是學計算機這麼多年的的,各種找算是很會的人了,所以啊,我想很多初學者或許在搭開發平臺這一關就被磨卻了信心與興趣了。 怪不得這麼神祕! 現在把這兩天的經驗總結下,或許可供

kubernetes實戰windows新增自籤ca證書信任

系列目錄 由於服務端設定了https訪問,因此如果通過瀏覽器訪問時會提示證書不被信任,但是仍然可以通過處理繼續訪問.但是在自動化環境中,都是通過命令來請求的,這樣不受信任的https就會報錯誤,這樣我們就要像docker伺服器一樣新增對自簽證書的信任.前兩部分我們分別在docker推送映象和拉取映象時添加

.net持續整合sonarqubesonarqube安裝與基本配置

系列目錄 Sonarqube下載與安裝 Sonarqube下載地址是:https://www.sonarqube.org/downloads/下載版本有兩個,一個是長期支援版,另一個是最新版,此處安裝的是最新版,目前版本是7.3,下載的時候點選醒目的藍色按鈕即可(此時下載的是社群版),下面有三個無底色按鈕

.net測試測試神器Autofixture基本配置

系列目錄 實際工作中我們需要的資料邏輯萬千,千變萬化,而AutoFixture預設是按照一定演算法隨機生成一些假資料,雖然這在多數時候是ok的,但是可能不能滿足我們的所有業務場景,有些時候我們需要進行一些配置,以期達到指定目標. AutoFixture簡單使用 前面我介首先介紹的是AutoFixture如

Python路58-Django安裝配置一些基礎知識點

python目錄一、安裝Django二、創建工程三、創建app四、靜態文件五、模板路徑六、設置settings七、定義路由八、定義視圖九、渲染模板十、運行Django是一款Python的web框架一、安裝Djangopip3 install django安裝完成後C:\Python35\Script下面會生成

CUDA在Windows/Linux平臺的配置編譯

text ref gpu加速 spa ron linux平臺 opencv3 v3.4 c++ 前段時間,在TX2上裝了OpenCV3.4,TX2更新源失敗的問題,OpenCV內部很多函數都已經實現了GPU加速,但是我們手動寫的函數,想要通過GPU加速就需要手動調用CU

JVM調優Tomcat啟動參數配置詳解

.bat xms 是否 大堆 pts 啟動參數 spa java permgen 開發項目中會遇到Tomcat內存溢出(java.lang.OutOfMemoryError: PermGen space)的問題,通過查找資料找到是通過設置

阿里雲CentOS搭建SVN伺服器許可權管理

  linux(centos)下SVN伺服器如何搭建?說到SVN伺服器,想必大家都知道,可以是在LINUX下如何搭建SVN伺服器呢?那麼今天給大家分享一下linux(centos)搭建SVN伺服器的思路!    雖然在windows上搭建SVN很簡單,但是效能卻不高,

react搭建專案webpack4.x的相關配置分析

       webpack一直再更新,webpack作為前端構建工具,有它 的優勢性。每次更新webpack為了讓這個工具使用起來更加方便,效能優化。在webpack3.x時,在打包壓縮時,必須得使用額外的外掛,配置雖然不是那麼麻煩有官網,但這是一個耗時耗力的事情。webp

SpringMVC學習系列(12) 完結 基於Hibernate+Spring+Spring MVC+Bootstrap的管理系統實現

到這裡已經寫到第12篇了,前11篇基本上把Spring MVC主要的內容都講了,現在就直接上一個專案吧,希望能對有需要的朋友有一些幫助。 一、首先看一下專案結構: InfrastructureProjects:是抽取出的基礎專案,主要封裝了一些通用的操作。 SpringMVC3Demo:就是管理系統

JavaEE開發SpringMVC中的路由配置引數傳遞詳解

在之前我們使用Swift的Perfect框架來開發服務端程式時,聊到了Perfect中的路由配置。而在SpringMVC中的路由配置與其也是大同小異的。說到路由,其實就是將URL對映到Java的具體類中的具體方法,或者對映到具體的JSP檔案上。本篇部落格主要就闡述瞭如何在SpringMVC中配置路由以及RES

AngularJsui.router路由基本配置傳參方法

使用AngularJs可以方便的做出單頁面應用,既然是應用,那就涉及到頁面跳轉的問題,使用Angularjs的路由外掛可以方便的使用路由功能,而且可以傳參非常容易。程式碼如下:路由外掛:angular-ui-router.js。檔案:index.html01<!DOCT

新手Git for Windows 的安裝、配置 GitHub中專案下載

一、Git安裝 1. 下載最新版本雙擊執行 2.  安裝過程   在這裡選擇 Use Git from Git Bash only (最安全的選項,表示僅能在git bash裡面使用git命令,

Kafka系列-Kafka監控工具KafkaOffsetMonitor配置使用

  KafkaOffsetMonitor是一個可以用於監控Kafka的Topic及Consumer消費狀況的工具,其配置和使用特別的方便。源專案Github地址為:https://github.com/quantifind/KafkaOffsetMonitor。

SonarQube 外掛 Issues Report & SonarLint 的配置使用

目錄 Issues Report Plugins 介紹 Issues Report Plugins 使用 SonarLint For IntelliJ IDEA 安裝及配置 1、Issues Report Plugins 介紹 使用 Issu

windows環境 Apache負載均衡session共享環境搭建

第1章   概述 1.1 背景介紹 為了提高系統的高可用性及系統性能,我們常常會用到負載平衡,通過某種負載分擔技術,將外部發送來的請求均勻分配到某一臺伺服器上,而接收到請求的伺服器獨立地迴應客戶的請求。均衡負載能夠平均分配客戶請求到伺服器列陣,籍此提供快速獲取重要資料,解決

-裸眼3D渲染相機畫面矯正

主題公園類,或大型廣場led螢幕,直角幕,三維影片如何製作,和最終畫面如何矯正還原。 前兩天,一朋友做的專案,大概就是一個柱狀的led螢幕,可能是立在廣場街角等處,如果這樣子,那個柱狀體的有顏色的兩面就是led螢幕,要做成裸眼3d效果。     那,要解決兩個事兒,一個是渲染相機怎麼打