Redirect using PHP

Tutorial on PHP redirection.

Redirecting using PHP is very simple. You just need a single line of code in your php page. I’ll split it out to two lines in the example below for the sake of clarity. Create a text file, calling it redirect.php. Add the following content to it:

<?php
$URI = $_REQUEST['to'];
Header ("Location: $URI");
?>

In the above example, we use the ‘to‘ parameter to specify our target URI.

To use this in your pages your link would look like the following:

<a href="http://www.example.com/redirect.php?to=http://www.vftw.com">Visit vftw.com</a>

You’d obviously replace example.com with your own domain, or you can omit it if you are referring it from the same domain.

Make sure there are no spaces or line-breaks before the <?php. If you are modifying the HTTP header, you are not allowed to write the the stream before that line.

Using Apache httpd with Glassfish

If you have a working instance of apache and a working instance of glassfish, you can get them working together, i.e. have apache handle all the incoming http and let it forward any jsp or servlet calls to glassfish.

You’ll need to dowload and setup mod_jk for apache.

Then you’ll need to follow the instructions in
http://weblogs.java.net/blog/jfarcand/archive/2006/03/running_glassfi_1.html

As per the instruction, you will need the tomcat-ajp.jar file from Tomcat 5.5.16.

NOTE: The latest version of Tomcat 5.5 at the time of writing this is 5.5.25 and it will not work. You will get an error message like NoSuchMethodError getContentLengthLong in your glassfish log. So, save yourself a lot of time and frustration and stick to 5.5.16.

The rest should be obvious from the instructions.

Update: Looks like the tomcat-ajp issue is fixed for version 2.1, and it works with Tomcat 5.5.26. Thanks Amy for the update. I didn’t even know my post had made it to the glassfish issue tracker! Though, perhaps I should have followed open source developer etiquette and entered the issue in there myself! 🙂