Making phpUnderControl (CruiseControl) accessible via a Proxy

| | Comments (2) | TrackBacks (1)

phpUnderControl is a customization of CruiseControl.

For those wanting to run CruiseControl behind an Apache webserver without configuring mod_jk or the like, this short how-to is just right.

Installing phpUnderControl / CruiseControl

This article is not about installing phpUnderControl or CruiseControl. For refernces see http://www.phpundercontrol.org/ or http://cruisecontrol.sourceforge.net/.

Configuring Apache as a proxy

So we are considering you have your phpUnderControl / CruiseControl instance up and running at http://localhost:8080/. We are also considering you have an instance of the Apache webserver up and running.

First we'll need to enable the proxy module of Apache. Consult the apache manual on how to enable the module in your instance of the Apache webserver. Now edit your Apache vHost or httpd.conf configuration.

You need to make sure that mod_proxy.so and mod_proxy_http.so do point to the right location on your harddisk.

Fixing URLs

Proxying already works with this configuration, but unfortunately clicking any link in your installation of phpUnderControl / CruiseControl would point to the direct installation of the instance. This is where mod_jk would come into play. But as we're just wanting a quick and easy resolution for runnning phpUnderControl / CruiseControl behind the Apache webserver, we'll be solving this issue quite easily:

Make sure to enable the ext_filter module. Now edit your Apache vHost or httpd.conf configuration again:

Conclusion

Just restart your Apache webserver and your instance of phpUnderControl / CruiseControl should be running perfectly well behind your Apache webserver.

1 TrackBacks

Listed below are links to blogs that reference this entry: Making phpUnderControl (CruiseControl) accessible via a Proxy.

TrackBack URL for this entry: http://www.maxhorvath.com/blog/mt-tb.cgi/8

Just installed phpUnderControl and CruiseControl on our development server. Actually everything went quite smoothly and only the java installation made some problems as it was mentioned nowhere that you need to install the Java SE Development Kit (JDK)... Read More

2 Comments

What for? I mean... why do you need pUC to be configured that way?

I get the how, but not the why.

Well, there might be several reasons ...

1. You cannot bind CruiseControl to one specific interface.
2. You don't wanna run CruiseControl with super user rights just because to get it listen on port 80.
3. You want to run CruiseControl on a secured line via HTTPS/SSL.
4. You don't wanna use the application server to serve static content.
5. Your server runs on a firewalled network. You don't want to reconfigure the firewall to let is pass connections to port 8080.
6. You don't wanna serve "strange" URLs including the port 8080.
7. ...

You get the point.

Of course - if you want to serve the phpUnderControl / CruiseControl instance to a wider audience (i.e. to users in the public internet), you should be considering using mod_jk - but the alternative shown in this article let's you solve all the points given above, too.

Leave a comment

Recent Activity

Tuesday

  • I tweeted, "Just published a new blog post:Problems when upgrading to Ubuntu 8.10 - Kernel panic - Unable to mount root fs http://tinyurl.com/5fbb6j"
  • I tweeted, "Dear american voters - don't be silly to vote for McCain ... thanks!"
  • I tweeted, "@janl Just ping me, I've Hot leads ..."

More ...

Conferences

Conferences I presented at:

Programming Blogs - BlogCatalog Blog Directory
Creative Commons License
This weblog is licensed under a Creative Commons License. blogoscoop