我最近设置了 DAV SVN,在我的 HTML 文件上将 svn:mime-type 设置为“text/html”,这使我可以看到在浏览器中正常呈现的 HTML 文件,而不是纯文本。
但是,我切换到 WebSVN,因此我可以在我的代码文件上获得语法高亮显示,现在 HTML 文件无法找到它们的依赖项 - js、css 等。HTML 文件找不到这些文件。
有没有办法在 WebSVN 中打开 HTML 文件并能够像使用常规 DAV SVN 一样正确查看 HTML 文件?
我最近设置了 DAV SVN,在我的 HTML 文件上将 svn:mime-type 设置为“text/html”,这使我可以看到在浏览器中正常呈现的 HTML 文件,而不是纯文本。
但是,我切换到 WebSVN,因此我可以在我的代码文件上获得语法高亮显示,现在 HTML 文件无法找到它们的依赖项 - js、css 等。HTML 文件找不到这些文件。
有没有办法在 WebSVN 中打开 HTML 文件并能够像使用常规 DAV SVN 一样正确查看 HTML 文件?
现在,我在 WebSVN 中添加了一个重定向,它将任何具有 mime 类型“text/html”的内容重定向到 DAV SVN 模块。
我的服务器的根目录加上“/svn/”,通过 HTTP 协议,是我的 DAV SVN 模块指向的地方。
我的服务器的根目录加上“/websvn”是 WebSVN 所在的位置。
在 WebSVN 文件“filedetails.php”中,我添加了以下代码:
// If a MIME type is associated with the file, deliver with Content-Type header.
if (!empty($mimeType) && $rep->hasReadAccess($path, false)) {
// DAN ADDED THIS -----------\
if ($mimeType == 'text/html') {
$dav_url = 'http://' . $_SERVER['SERVER_NAME'] . '/svn/' . $repname . $path;
header("Location: $dav_url");
exit;
}
//---------------------------/
$base = basename($path);
header('Content-Type: '.$mimeType);
//header('Content-Length: '.$size);
header('Content-Disposition: inline; filename='.urlencode($base));
$svnrep->getFileContents($path, '', $rev, $peg);
exit;
}