3

我试图让 cc.net 仪表板在也有 apache 的构建机器上运行。

我已尝试按照此处所述安装 mod_aspdotnet 。我可以运行示例 aspx 页面,但无法让 cc.net 运行。我需要做一些魔法吗?

对于它的价值,http://localhost/ccnet设法将我重定向到http://localhost/ccnet/ViewFarmReport.aspx 但这给了我一个 404 错误。

以下是相关的 httpd.conf 部分:

#asp.net
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"

AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo

<IfModule mod_aspdotnet.cpp> 
  # Mount the ASP.NET /asp application
  AspNetMount /ccnet "C:/Program Files/CruiseControl.NET/webdashboard"
  #/SampleASP is the alias name for asp.net to execute

  # Map all requests for /asp to the application files
  Alias /ccnet "C:/Program Files/CruiseControl.NET/webdashboard"
  #maps /ccnet request to "C:/Program Files/CruiseControl.NET/webdashboard"
  #now to get to the /ccnet type http://localhost/ccnet
  #It'll redirect http://localhost/ccnet to "C:/Program Files/CruiseControl.NET/webdashboard"

  # Allow asp.net scripts to be executed in the /SampleASP example
  <Directory "C:/Program Files/CruiseControl.NET/webdashboard">
    Options FollowSymlinks ExecCGI
    Order allow,deny
    Allow from all
    DirectoryIndex index.htm index.aspx default.aspx
   #default the index page to .htm and .aspx
  </Directory>

  # For all virtual ASP.NET webs, we need the aspnet_client files
  # to serve the client-side helper scripts.
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
  <Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
    Options FollowSymlinks
    Order allow,deny
    Allow from all
  </Directory>
</IfModule>
#asp.net 
4

3 回答 3

3

这就是我所做的,灵感来自亚当的回答:

AliasMatch /ccnet(.*\.aspx.*) "C:/Program Files/CruiseControl.NET/webdashboard/default.aspx" 
Alias /ccnet/ "C:/Program Files/CruiseControl.NET/webdashboard/

尝试将所有 .aspx 文件与 webdashboard 应用程序匹配,否则只需从文件系统中提取内容。

我现在有工作的 css、图像、应用程序、CCTray 下载链接。

于 2009-03-26T14:53:50.763 回答
1

我需要同时添加:

  • AliasMatch /aspnet_client/system_web/(\d+) (\d+) (\d+)_(\d+)/(.*) "C:/Windows
  • AspNet 文件目录虚拟

见 xml:

<IfModule mod_aspdotnet.cpp> 
  # Mount the ASP.NET /asp application
  AspNetMount /ccnet "C:/Program Files/CruiseControl.NET/webdashboard"

  #maps /ccnet request to "C:/Program Files/CruiseControl.NET/webdashboard/default.aspx"
  AliasMatch /ccnet/(.*) "C:/Program Files/CruiseControl.NET/webdashboard/default.aspx" 

  # Allow asp.net scripts to be executed in the /SampleASP example
  <Directory "C:/Program Files/CruiseControl.NET/webdashboard">
    Options FollowSymlinks ExecCGI
    AspNet Files Directories Virtual
    Order allow,deny
    Allow from all
    DirectoryIndex index.htm index.aspx default.aspx
   #default the index page to .htm and .aspx
  </Directory>      

  # For all virtual ASP.NET webs, we need the aspnet_client files
  # to serve the client-side helper scripts.
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
  <Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
    Options FollowSymlinks
    Order allow,deny
    Allow from all
  </Directory>
</IfModule>
于 2009-02-12T20:19:55.490 回答
0

I thought I was the only one in the world trying to get such a setup working.

I fixed this by adding the line: AspNet Files Directories Virtual

  <Directory "C:/Program Files/CruiseControl.NET/webdashboard">
    Options FollowSymlinks ExecCGI
    AspNet Files Directories Virtual
    Order allow,deny
    Allow from all
    DirectoryIndex index.htm index.aspx default.aspx
   #default the index page to .htm and .aspx
  </Directory>

I also card-coded the path to my dotnet framework, but I'm not sure if that is necessary:

<Directory "C:/Windows/Microsoft.NET/Framework/v2.0.50727">
    Options FollowSymlinks
    Order allow,deny
    Allow from all
</Directory>
于 2009-02-11T19:32:05.023 回答