專案

一般

設定檔

動作

WebDav 外掛

簡介

這個 WebDav 外掛主要是用於透過 WebDav 協定存取檔案和文件的 POC(概念驗證)。
這個外掛是從現有的 railsdav 外掛(railsdav)分支出來的,並進行了一些修改以使其能在 REDMINE 中運行。

這是使用 REDMINE 主幹 r3826(=> 0.9.5 +)完成的,但 0.9 之後的任何版本應該都能運作。最後測試的版本是 r4029(1.0.1)

主要功能
  • 可以使用類似 http://myserver/redmine/webdav 的網址透過 webdav 存取專案
  • 這個外掛允許您查看具有以下結構的資料夾
    project1
       + documents
       |    + title_document1
       |    |     + file1
       |    |     + file2
       |    |     
       |    + title_document2
       |          + file1
       |          + file2
       |
       + files
       |    + file1 (with no version)
       |    + file2 (with no version)
       |    + Version1
       |    |     + file1
       |    |     + file2
       |    |
       |    + Version2
       |          + file1
       |          + file2
       |
       + subversion
            + branches
            + tags
            + trunk
    project2
       + documents
       + files
    project3
       + documents
       + subversion
    
    
  • 外掛使用 REDMINE 權限(:view_files、:manage_files、:view_documents 和:manage_documents)來授予對檔案和資料夾/文件的存取權限
  • 外掛允許您執行所有檔案操作(建立、刪除、重新命名、移動和複製)
  • 外掛允許您建立文件(只需在 documents 資料夾內建立一個資料夾),但不允許建立版本
  • 外掛允許透過 WEBDAV 存取倉庫(如果倉庫位於 redmine 伺服器上,則 subversion 和檔案系統 SCM 為讀/寫,REDMINE 支援的所有其他 SCM 為唯讀)
  • 使用的資料夾名稱(例如:範例中的 files/documents/subversion)可以透過每個專案的設定來更改

設定

WEBDAV 使用 REDMINE 核心(至少在 0.9.5 中)不支援的基本 HTTP 驗證。一種解決方法是將這個非常好用的外掛 redmine_http_auth 與 Apache 和 RedmineAdvanced.pm(位於 redmine_webdav/extra/svn 中)一起使用

關於 subversion 支援
若要將變更提交至 Subversion,外掛會使用檔案協定開啟倉庫。因此,您需要以下項目
  • 倉庫必須安裝在 REDMINE 伺服器上。
  • 外掛會將您的倉庫位置開頭([protocol]://[server]/)替換為「file:///svnroot/」。您可能需要建立一個符號連結 /svnroot 才能正常運作...

1. 將外掛安裝到 vendor/plugins

如果您想安裝 redmine_http_auth,請從您的 redmine 目錄執行以下命令然後使用以下命令安裝 redmine_webdav

2. 取得所需的 gem

<a href="http://github.com/stueccles/railsdav">Railsdav</a> 需要這 2 個插件
  • unicode
  • shared-mime-info
在 Linux 底下,安裝方式如下
  • sudo gem install unicode
  • sudo gem install shared-mime-info

3. 設定您的網路伺服器

假設您使用的是 RHEL5/CentOS5
  • 將 redmine_webdav/extra/svn/RedmineAdavanced.pm 複製到 /etc/httpd/Apache/Authn
  • 建立 /etc/httpd/conf.d/redmine_webdav.conf 檔案

<Location /redmine/webdav>
AuthType Basic
AuthName REDMINE
Require valid-user
PerlAccessHandler Apache::Authn::RedmineAdvanced::access_handler
PerlAuthenHandler Apache::Authn::RedmineAdvanced::authen_handler
RedmineDSN "DBI:mysql:database=redmine;host=192.168.10.1;port=3306"
RedmineDbUser "redmine"
RedmineDbPass "password"
RedmineAuthenticationOnly "On"
Order allow,deny
Allow from 127.0.0.1
Satisfy Any
</Location>

4. 重新啟動您的網路伺服器

/etc/init.d/httpd restart

5. 使用您的網路瀏覽器設定 REDMINE

如果一切正常,您應該會在插件清單(管理 -> 插件)中看到兩個插件(WebDav 和 HTTP 驗證)

現在可以使用新的權限,您必須將它們分配給需要的角色

6. 設定您的專案

別忘了在您要透過 WevDav 存取檔案的專案中啟用 webdav 模組

7. 使用 webdav 管理檔案和文件

您必須使用 WebDav 用戶端才能使用該插件。

對於 MacOSX(原生支援 webdav 存取)
  • 開啟 Finder 並選擇「前往 -> 連線到伺服器...」
  • 輸入 http://myserver/redmine/webdav 作為伺服器的網址
  • 輸入您的憑證(登入名稱/密碼)
  • 您已進入
對於 linux/Ubuntu
  • 選單 位置 -> 連線到伺服器...
    • 服務類型:WebDAV (HTTP)
    • 伺服器:myserver
    • 資料夾:/redmine/webdav
  • 點擊 連線
對於 WindowsXP
  • 開啟 我的網路芳鄰
  • 雙擊 新增網路位置
  • 點擊「下一步」兩次,然後輸入 http://myserver/redmine/webdav
  • 點擊「下一步」
  • 輸入您的憑證(登入名稱/密碼)
  • 點擊「完成」

原始作者的 README:

Railsdav(適用於 Ruby On Rails 的 WebDAV) ===================================

這是原始 Railsdav 的修改版本,由 Marcello Nuccio 建立。我修改它是因為我無法使用原始版本。

請先閱讀 lib/acts_as_webdav.rb 中的註解!

Railsdav 是一個插件,允許將自訂 WebDAV 控制器新增到 Ruby On Rails 應用程式,以便將功能作為檔案系統公開給 WebDAV 用戶端,例如 Mac OS X Finder、Windows 網路芳鄰、Dreamweaver 等。

除了 rails 之外,Railsdav 還需要以下 gem

  • unicode (gem install unicode)
  • shared-mime-info (gem install shared-mime-info)

Railsdav 由 Stuart Eccles 建立(http://www.liverail.net/)。我要感謝以下協助 Railsdav 的人士

  • Albert Ramstedt,他為各種程式碼問題提供了錯誤修正,並協助重新架構插件
  • Alex MacCaw
  • Fabien Franzen

歷史記錄

0.2 : 2010-10-05
新增:新增鎖定(Xabier Elkano 的貢獻)

0.1.3 : 2010-08-26
修正:新增對 Windows XP + MSOffice XP 的更好支援(感謝 Xabier Elkano)
修正:PROPFIN 回應中的網址現在已編碼(支援多位元組字元集)
修正:複製目錄現在是遞迴的(檔案系統 SCM)

0.1.2 : 2010-08-23
  • 已修復:MSOffice 的讀/寫存取
0.1.1 : 2010-08-03
  • 新增:支援檔案系統 SCM 的寫入操作

0.1.0 : 2010-07-23
透過重構進行小幅進化...

  • 新增:透過 WEBDAV 存取儲存庫(如果儲存庫位於 Redmine 伺服器上,則 Subversion 支援讀/寫,所有其他支援的 SCM 僅支援唯讀)
  • 新增:每個專案的設定都具有新的權限(管理 WEBDAV)

0.0.1 : 2010-07-06
初始版本

Mischa The Evil將近 14 年前更新 · 10 個版本