homepage Welcome to WebmasterWorld Guest from 54.196.159.11
register, free tools, login, search, pro membership, help, library, announcements, recent posts, open posts,
Become a Pro Member
Visit PubCon.com
Home / Forums Index / Code, Content, and Presentation / Perl Server Side CGI Scripting
Forum Library, Charter, Moderators: coopster & jatar k & phranque

Perl Server Side CGI Scripting Forum

    
Collective
JeremyL




msg:439460
 1:50 am on Jan 21, 2000 (gmt 0)

I started to use your Collective program but had a concern about getting banned for submitting too much.

Since I have my own ip on my site and the program is in my cgi bin of my site then wouldn't the sites IP be the one the the SE's saw when I used it to submit? This concerns me.

 

Brett_Tabke




msg:439461
 3:45 am on Jan 21, 2000 (gmt 0)

The same thing concerns me too. However, it is no different than people with fixed IP's from their home or work box. I have the same IP all the time on my office dsl lines. My Collective database has 40k submissions in it since Nov 1. It is about 8meg. But yes, I understand the concern - I don't know if there is anyway to address it.

One thing you can do, is install and setup Apache for windows, and Activestates Perl for Windows. Then do your submissions from the home machine instead of your server. That is what I do, but since I'm on dsl most of the time, it makes no difference.

JeremyL




msg:439462
 3:56 am on Jan 21, 2000 (gmt 0)

I already have perl installed on my Windows pc. I just bought a book and am starting to learn perl so I installed it but I am unclear on a few things for making it windows compatible. How would I go about installing the script for windows? What would I have to change?

For the the record my Perl is located in

C:\Perl

Brett_Tabke




msg:439463
 7:46 am on Jan 21, 2000 (gmt 0)

Install Apache to start (www.apache.org).

The next issue of the quarterly (rsn real soon now) will have a pretty big article on doing just this (installing apache and perl).

JeremyL




msg:439464
 10:47 am on Jan 21, 2000 (gmt 0)

I can only find apache for NT do you know if its availible for windows?

RealSpices




msg:439465
 11:33 am on Jan 21, 2000 (gmt 0)

I have a client who has it installed on a win95 box. I wasn't involved in that but it serves GIS info for their intranet.

Brett_Tabke




msg:439466
 6:25 pm on Jan 21, 2000 (gmt 0)

Apache for Win32 runs under 95/98/nt

JeremyL




msg:439467
 1:48 am on Jan 22, 2000 (gmt 0)

Ok I have Apache installed now what?

Brett_Tabke




msg:439468
 7:19 am on Jan 22, 2000 (gmt 0)

Now comes the fun part: configuring. Don't let it intimidate you, it really isn't too bad. No, its not click and go, but its not difficult either.

In your \apache©onf directory there is a file "httpd.conf". Make a quick backup of that file to something like "httpd.conf.bak" just in case.

Now open the "httpd.conf" file up in an editor. Scroll down to the line that says "ServerName" and put in localhost:

ServerName localhost

Now lets make sure Apache works.

Start apache. Execute apache.exe.

>start >run c:\apache\apache.exe

It should open a window showing you it is running. Just minimize the window.

Open your browser and type in the address:

[localhost...]

You should get a page saying "it worked".

shut down apache with:

c:\apache\apache -k

Think k for kill.

Now lets go do some more configuring.

Open back up httpd.conf and edit these lines:


DocumentRoot

point that at the root of your website. At this point I should mention, that you should have your offline website setup Identical to your online website. For instance, my root directory here on this server is /www/searchengineworld/. So on my home box, I have those two directories setup and the remainder of the site is a perfect file and directory match to what I have here.

My documentroot line on apache reads:

DocumentRoot c:/www/searchengineworld/

(remember this is a unix program really, use foreslashes instead of backslashes in directories). So, set the documentroot to match your setup.

Right under the document root section of the httpd.conf file is a section on setting directories. Use this for now:

<Directory />
Options All
</Directory>

And also add this (replace the /a1/web with your document root directory)

<Directory "C:/www/">
Options All
AllowOverride None
Order allow,deny
Allow from all
</Directory>


Next, add this line about half way down the httpd.conf file somewhere: (there is a section on scripts, look for it)

AddHandler cgi-script .cgi

or whatever you need for scripts to match your own webserver.

You'll probably want server side includes at some point, so enabled them with:

AddType text/html .htm
AddHandler server-parsed .htm

AddType text/html .shtml
AddHandler server-parsed .shtml

Those lines can go under the line that reads something like: # To use server-parsed HTML files

that one. (sorry, I don't have a stock httpd handy).


That should give you enough to get going. Save the file and see if you can start apache and browse some files from your "webserver" by using "httpd://localhost" again.


Lets stop there and see if you have caught your breath...

When we get it all up and running smoothly, you will not only have cgi's offline but a perfect mirror of your online site. That way you can make all kinds of changes by viewing the pages in your browser right off the hard drive. Edit a file, a couple of clicks and a browser reload to view it.

Surf your entire site without firing up a modem - speed, creativity, there isn't anything like running a webserver offline to give your page production a big kick.

JeremyL




msg:439469
 5:42 am on Jan 23, 2000 (gmt 0)

Ok a few questions. My domain on my host looks like the path below.
/home/username/domain/
Should I set my doamin on my server exactly as above or do it just
/home/domain


I am assuming exactly as it is on my host so cgi's won't have to be changed but just making sure.

Also when you say to put [localhost...] do you mean exactly thet or do you mean to put something that my pc would be called. Again I am assuming you want that exactly but I am just making sure.

One last thing. I have perl in C:\Perl and apache in folder C:\Apache
Does the folder home (which will be the root of and contain my whole site need to go into the folder apache or can it be in my documents?

Brett_Tabke




msg:439470
 7:55 am on Jan 23, 2000 (gmt 0)

>re: paths

Yes, go for a mirror of the exact paths/directories as your sites. I have another site on another host that lives at:

/a1/Web/showcase/phdss

So I have a directory "c:\a1\Web\showcase\phdss"

>re: localhost

Yes, exactly "http://localhost". That tells windows to look for the file from a local web server. (we will get to the naming part of how you can use "http://www.yourdomain.com" in a bit. We just need to get everything working first before going for the gold.

>re: c:\perl

Again, the trick is to match your website perl location. That first line of everyperl program "#!/usr/bin/perl" is the local of perl on your server. You *really* want your local perl to match that. In other words, install perl on your machine at "c:\usr\bin" or "c:\usr\local\bin" which ever matches your online web host.

When you select to install perl, just select that directory for the installation location, and then you will end up with "\usr\bin\perl" for a "shabang line" (the first line of every perl program). If you do that (install perl in \usr\bin or \usr\local\bin), you'll never have to edit a script to run local or on your web server -they'll be identicle.

Global Options:
 top home search open messages active posts  
 

Home / Forums Index / Code, Content, and Presentation / Perl Server Side CGI Scripting
rss feed

All trademarks and copyrights held by respective owners. Member comments are owned by the poster.
Home ¦ Free Tools ¦ Terms of Service ¦ Privacy Policy ¦ Report Problem ¦ About ¦ Library ¦ Newsletter
WebmasterWorld is a Developer Shed Community owned by Jim Boykin.
© Webmaster World 1996-2014 all rights reserved