Convert Microsoft to LINUX: TOMCAT Java Webserver
TOMCAT Java Web Server comes in many flavors and platforms. I chose the
simplest way to install it using the Solaris 10.0 UNIX Server. The
default install automatically gives you the Apache server as described
here.
Note, the Java System Development Kit is already there and everything you need. You just have to do a bit of copying and fine tuning. The
Tomcat Server will sit on top of the default Apache server. It uses
something called the Jakarta project which provides a module going between the Java TOMCAT sever and the Apache Server which is written in the
C programming language. This way if a Java Server Page messes up you still have your plain old Apache Web Server working.
Here are the steps:
- You need to define the JAVA_HOME directory variable. This is the
place where the Java System Development Kit (JSDK) lives. For me it
was in the directory of :
/usr/jdk/j2sdk1.4.2_11
So you would type:
JAVA_HOME=/usr/jdk/j2sdk1.4.2_11; export JAVA_HOME
Make sure you are in the bash shell when doing this in case
you have to retype anything or use tab completion.To test type:
echo $JAVA_HOME
to make sure you did it right.
- Next create the following three directories:
mkdir /usr/apache/tomcat/logs
mkdir /usr/apache/tomcat/conf
mkdir /usr/apache/tomcat/webapps
These are missing from the default install.
- Next type
cd /usr/apache/tomcat/conf
cp /var/apache/tomcat/conf/* .
cp server.xml-example server.xml
- Next type
rsync -a /var/apache/tomcat/webapps/ /usr/apache/tomcat/webapps
to copy the directory from the var branch to the usr branch. If for
some reason you do not have this command you can do it with the GUI
using the file manager.
- Next type:
cd /usr/apache/tomcat/bin
./startup.sh
- Let us check all is ok. Type:
ps -ef | grep tomcat
to make sure the tomcat daemon is running. You should see:
root 6657 1 0 18:06:13 pts/3
10:05 /usr/jdk/j2sdk1.4.2_11/bin/java -Djava.endorsed.dirs=/usr/apache/tomcat/bin:/us
- Lastly open a web browser and type:
http://localhost:8080/
You should get the default webpage saying:
TOMCAT Version 4.05 ... The Jakarta Project..
- Now that you are sure everything works you can edit the
startup.sh file so that the first two lines are:
# Define the JAVA_HOME variable to launch Tomcat
JAVA_HOME=/usr/jdk/j2sdk1.4.2_11; export JAVA_HOME
-
Lastly, edit /etc/profile so that Tomcat starts automatically by
making the last line:
/usr/apache/tomcat/bin/startup.sh
Tomcat can also run on Centos. Here are the steps:
-
Go to here
and search for Linux Platform - J2SE(TM) Development Kit
5.0 Update 11(as of 3/16/7 most recent Java Development Kit). This
automatically includes the JRE (Java Runtime Environment) also.
The file will be called "jdk-1_5_0_11-linux-i586-rpm.bin". I like to
put it in the directory /usr/local/src. I assume you are logged
in as root when you do the download.
-
mkdir /usr/local/java if it is not already there.
-
cd /usr/local/src
-
cp jdk-1_5*.bin /usr/local/java , i.e. what you just downloaded.
-
cd /usr/local/java
chmod +x j*.bin so you can execute it.
./jdk-1_5_0_11-linux-i586-rpm.bin
-
cd /usr/java
This is where all your various versions of
Jave Runtime Environment and Java Development Kit live.
-
Create symbolic links for the current version you just installed.
ln -s jdk1.5.0_11 j2sdk
ln -s jre1.5.0_11 j2jre
-
rm *.bin
You should not need the binaries any more.
-
Add the following section to the end of your /etc/profile as
outlined
here. Be sure to make a backup
copy before modifying your /etc/profile.
-
source /etc/profile
Note, you will probably get an error saying /usr/local/tomcat
is not found because you have not installed it yet. That is ok. We
will do that next, after checking the Java installed successfully.
-
Type java -version
You should see something like: java version "1.5.0_11"
-
Tomcat will use tcp port 8080. Let us first make sure that is enabled.
Go to Application | System Settings | Security Level | Enable
Firewall | Other Ports and
add in tcp port 8080 and click enable. You may have to stop the service
iptables first to do this. Once the service is reenabled you
should see a listing to accept tcp port 8080.
-
We now need to create the user tomcat
that will login with no login shell. Type:
cd /usr/local/src
groupadd -g 220 tomcat
useradd -u 220 -g tomcat -c "Tomcat" -r -d /usr/local/tomcat -s "sbin/nologin" tomcat
Note that last command is all on one line.
-
To download the source type:
wget http://apache.mirrors.northco.net/tomcat/tomcat-5/v5.5.23/bin/apache-tomcat-5.5.23.tar.gz
Yes that was all one line.
tar xfvz apache-tomcat-5.5.23.tar.gz -C /usr/local
cd /usr/local
chown -R tomcat:tomcat /usr/local/apache-tomcat-5.5.23
ln -s apache-tomcat-5.5.23 tomcat
The last line creates the symbolic link to tomcat.
-
Now let us "re-source" the profile:
source /etc/profile
This time there should be no errors. Go to
http://localhost:8080 in your favorite browser and you
should see the Tomcat Jakarta 5.5.23 Logo.
-
For a final touch, so you can click on the Admin Tool for Tomcat, you
need to add a user that has admin and manage privileges. In the real
world you would do something more secure than this. You can copy this
file to /usr/local/tomcat/conf/tomcat-users.xml overwriting your previous one. Make sure you make a backup
copy first.