CruiseControl.Net Dashboard + Apache

旧街凉风 提交于 2019-12-21 19:45:35

问题


I'm trying to get cc.net dashboard running on a build machine that also has apache on it.

I've tried installing mod_aspdotnet as described here. I can run the sample aspx page, but I am unable to get cc.net to run. Is there some magic I need to do?

For what it's worth, http://localhost/ccnet manages to redirect me to http://localhost/ccnet/ViewFarmReport.aspx but that gives me a 404 error.

Below is the relevant httpd.conf section:

#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 

回答1:


This is what I've done, inspired by Adam's answer:

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

Try match all the .aspx files to the webdashboard application, otherwise just pull stuff off the filesystem.

I now have working css, images, application stuff, CCTray download link.




回答2:


I needed to add both:

  • AliasMatch /aspnet_client/system_web/(\d+)(\d+)(\d+)_(\d+)/(.*) "C:/Windows
  • AspNet Files Directories Virtual

See 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>



回答3:


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>


来源:https://stackoverflow.com/questions/471276/cruisecontrol-net-dashboard-apache

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!