INSTALL.web - [Web] Installation instructions for WordNet::SenseRelate::AllWords Web interface
cd web cp -R cgi-bin/allwords/ /usr/lib/cgi-bin/ cp -R htdocs/allwords/ /var/www/ chmod -R 0777 /usr/lib/cgi-bin/allwords/user_data chmod -R 0777 /var/www/allwords/user_data cd /usr/lib/cgi-bin/allwords/ sudo perl allwords_server.pl --logfile /var/www/allwords_log.txt
cd web cp -R cgi-bin/allwords/ /usr/local/apache2/cgi-bin/ cp -R htdocs/allwords/ /usr/local/apache2/htdocs/ chmod -R 0777 /usr/local/apache2/cgi-bin/allwords/user_data chmod -R 0777 /usr/local/apache2/htdocs/allwords/user_data cd /usr/local/apache2/cgi-bin/allwords/ sudo perl ./allwords_server.pl --logfile /usr/local/apache2/htdocs/allwords_log.txt
This guide provides guidelines for WordNet::SenseRelate::AllWords Web interface installation. The guide assumes that you are using the Apache webserver as installed on a Fedora Core 3 or Ubuntu 8.04 based Linux distribution. If you are using a different server or Linux distribution, then the setup process will probably vary a little. Moreover Your path names may vary depending on how you have installed Apache.
The following Modules and their dependencies are required by the SenseRelate::AllWords Web interface :
WordNet::Similarity WordNet::Tools WordNet::SenseRelate::AllWords
All these modules are available at CPAN. Please refer to README.web.pod for more information about installation of these modules. Before installing the web interface all these dependencies must be resolved. Please refer to INSTALL.pod of WordNet-SenseRelate-AllWords for installing dependencies.
Make sure you are a super user, more specifically sudo in ubuntu and su in Fedora
Assuming that you are currently in the directory where you have downloaded WordNet-SenseRelate-AllWords, go to the web directory
Copy cgi-bin/allwords directory to the cgi-bin directory of your web server.
cp -R cgi-bin/allwords/ /usr/lib/cgi-bin/
cp -R cgi-bin/allwords/ /usr/local/apache2/cgi-bin/
Copy htdocs/allwords directory to the htdocs directory of your web server.
cp -R htdocs/allwords/ /var/www/
cp -R htdocs/allwords/ /usr/local/apache2/htdocs/
Several output files are created by the web-interface for which it requires read, write and execute permissions to the user_data/ directory. Thus make sure that "others" user level has read-write-execute access to the cgi-bin/allwords/user_data and htdocs/allwords/user_data directory. Similarly make sure if .pl and .cgi files in cgi-bin/allwords/ directory have execute permission for all users including "others" user level. This might not be the best way considering the security related issues. However, at this point this is how we deal with the permissions. Alternative suggestions are most welcome!
chmod -R 0777 /usr/lib/cgi-bin/allwords/user_data chmod -R 0777 /var/www/allwords/user_data
chmod -R 0777 /usr/local/apache2/cgi-bin/allwords/user_data chmod -R 0777 /usr/local/apache2/htdocs/allwords/user_data
Starting the web server.
Again make sure you are a super user. We need bash shell to run our scripts. So make sure your /bin/sh is pointing to /bin/bash. Go to the cgi-bin/allwords directory and start the web server with the appropriate options. You need to provide the path of your logfile, which is a mandatory option of allwords_server.pl. First start similarity server, if it is not already running. For example, we start our similarity server as below.
/usr/local/bin/similarity_server.pl --stoplist /root/stoplist.txt --logfile /var/log/similarity_server.log --maxchild 8
If your /bin/sh is pointing to /bin/dash, please make it point to /bin/bash Here is what we did during our install on ubuntu sudo rm /bin/sh sudo ln -s /bin/bash /bin/sh Please refer the link below for more information on this https://wiki.ubuntu.com/DashAsBinSh Then start the server cd /usr/lib/cgi-bin/allwords/ nohup sudo perl allwords_server.pl --logfile /var/www/allwords_log.txt & In this example allwords_server.pl's log is stored at /var/www/allwords_log.txt.
cd /usr/local/apache2/cgi-bin/allwords/ nohup sudo perl ./allwords_server.pl --logfile /usr/local/apache2/htdocs/allwords_log.txt & In this example allwords_server.pl's log is stored at /usr/local/apache2/htdocs/allwords_log.txt.
You might want to change the following things by using various options of allwords_server.pl
The default WordNet path we use is /usr/local/WordNet-3.0. If you have WordNet installed on path other than /usr/local/WordNet-3.0/, you can use --wnlocation option of allwords_server.pl and specify your WordNet path. For example, if your WordNet is installed at the path /usr/MyWordNet/WordNet-3.0 perl allwords_server.pl --logfile /var/www/allwords_log.txt --wnlocation /usr/MyWordNet/WordNet-3.0
We use 32323 port by default. If you want to change this port you can use --port option of allwords_server.pl. For example, perl allwords_server.pl --logfile /var/www/allwords_log.txt --port 30303 Note that the port you are listening on should be same as the port you are sending messages to. Therefore, if you want to use this option, you need to change $port variable in allwords.cgi file and make it same as the port you are listening on. For example, in this case we will set $port variable in allwords.cgi to 7075 my $remote_port=32323;
Automatic start up.
If you would like the web server to start automatically when your system is rebooted, you can modify your /etc/rc.local file to include the following:
echo "** similarity_server.pl starting ..." /usr/local/bin/similarity_server.pl --stoplist /root/stoplist.txt --logfile /var/log/similarity_server.log --maxchild 8 echo "** senserelate allwords starting ..." OLDPWD=`pwd` cd /usr/lib/cgi-bin/allwords ./allwords_server.pl --logfile /var/www/allwords_log.txt cd $OLDPWD exit 0
# start apache (must be done before starting allwords) /usr/local/apache2/bin/apachectl -k start # start allwords server OLDPWD=`pwd` cd /usr/local/apache2/cgi-bin/allwords /usr/local/apache2/cgi-bin/allwords/allwords_server.pl & cd $OLDPWD exit 0
Note that /root/stoplist.txt is the stoplist used by WordNet::Similarity. The default stoplist used by the web interface is located at web/cgi-bin/allwords/user_data/default-stoplist-raw.txt.
Varada Kolhatkar, University of Minnesota, Duluth kolha002 at d.umn.edu Ted Pedersen, University of Minnesota, Duluth tpederse at d.umn.edu
This document last modified by : $Id: INSTALL.web.pod,v 1.12 2009/02/13 16:25:16 kvarada Exp $
Copyright (c) 2008, Varada Kolhatkar, Ted Pedersen, Jason Michelizzi
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
Note: a copy of the GNU Free Documentation License is available on the web at http://www.gnu.org/copyleft/fdl.html and is included in this distribution as FDL.txt.