Solved

Writing a Search CGI running on a local host

Posted on 2002-05-28
16
323 Views
Last Modified: 2013-12-25
I would like some pointers on how to write a search CGI running on a local host, meaning searching in a folder of HTML files on my computer.

I especially need help in how to build the local host server and how to call the search CGI running from it.
The other point I am not sure about is how I return the results back to my browser.
0
Comment
Question by:barakp
  • 7
  • 6
16 Comments
 
LVL 10

Expert Comment

by:rj2
ID: 7042366
You should install web server (e.g Apache),install Perl and save you CGI script in cgi-bin directory.
If you have configured web server correctly, you should be able to access cgi script like http://localhost/cgi-bin/myscript.pl

Here are some links:
Apache web server: http://www.apache.org
Activstate Perl: http://www.activestate.com/Products/ActivePerl/

Below is sample cgi script that returns "hello world" in browser.


#!/usr/bin/perl
use strict;

print "Content-Type: text/html\n\n";
print "<HTML><BODY>Hello world</BODY></HTML>";
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 7042531
would you realy re-envent the wheel? There exist http://www.htdig.org/
0
 
LVL 1

Author Comment

by:barakp
ID: 7043090
I don't really understand how to configure the server.

Furthermore, I would like to note the machine the search will be done from will be Windows based.

Thanks for what you wrote so far it is great.
0
 
LVL 1

Author Comment

by:barakp
ID: 7043095
Meaning the server needs to run from a Window's based machine.
0
 
LVL 10

Expert Comment

by:rj2
ID: 7044792
Well, for a basic setup I don't think you have to configure anything.
What Windows version do you have (95/98/ME/NT/2000/XP) ?

Please follow instructions below to get started.

Here is link to Windows version of Apache
http://apache.archive.sunet.se/dist/httpd/binaries/win32/apache_2.0.36-win32-x86-no_ssl.msi

Download it and install it.

Then download and install Perl.
http://www.activestate.com/Products/ActivePerl/

Test your web server by clicking this url
http://localhost

You should get a welcome message from Apache.

Then save the "hello world" cgi script above as "myscript.pl" under the cgi-bin directory where you installed Apache.

Then click on link below
http://localhost/cgi-bin/myscript.pl

0
 
LVL 1

Author Comment

by:barakp
ID: 7046785
I need this website to be distributed via CD-ROM. Does the server need to be installed in every computer or it be installed on the CD?
0
 
LVL 10

Expert Comment

by:rj2
ID: 7047411
CGI scripts need a web server to run, yes.
If what you want to do here is to distribute some html information with a search engine on CD-rom then IMHO it makes more sense to make the search engine in Java than to make it as a CGI script.
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 1

Author Comment

by:barakp
ID: 7047641
Do you mean a Java application or Java applet?

I would like to search via a web browser interface.
0
 
LVL 10

Expert Comment

by:rj2
ID: 7048768
You could write the search engine as a Java application that you could access through a web browser interface. The Java application would need to speak http for this to work.

I suggest Java because it has excellent network support, is platform independent and most users will already have Java support installed, but it is possible to use other languages too, including Perl.

Do you know something about the users that will use the CD-rom, is it a closed, small group or could it be anybody?
Can you assume something about which OS they use?
0
 
LVL 1

Author Comment

by:barakp
ID: 7049321
It's a group of 30 people using some sort of Windows OS.

Can a Java application be called upon from a web browser?
0
 
LVL 10

Expert Comment

by:rj2
ID: 7049336
Yes, if the Java aplications listens on some port (e.g. 6020), you can access it from web browser like http://localhost:6020
The Java application would need to written as a miniature web server.

Will the CD-ROM users be willing to install a web server and Perl in order to use the CD-ROM?

If yes, writing a CGI script is probably less work than writing a Java application.
If no, or if you plan wider distribution later, a Java application means less installation headaches for the users.
0
 
LVL 1

Author Comment

by:barakp
ID: 7049337
Can you explain to me how I get the Java application to listen to a port?
0
 
LVL 10

Accepted Solution

by:
rj2 earned 200 total points
ID: 7049617
Here is a link that should get you started.

http://www.advisor.com/Articles.nsf/aid/KUCHP001

0
 
LVL 1

Author Comment

by:barakp
ID: 7052023
The site looks great. Give me some time to check it out.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

I found this questions asking how to do this in many different forums, so I will describe here how to implement a solution using PHP and AJAX. The logical flow for the problem should be: Write an event handler for the first drop down box to get …
This article will show, step by step, how to integrate R code into a R Sweave document
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now