You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by jjalan <ja...@gmail.com> on 2009/08/15 00:14:37 UTC

[users@httpd] Map every request to a single script

Hello,

I am learning Apache HTTP Server and I was wondering what is the best
practice to map all the request valid or invalid to a single script on my
server.

For example, if anybody tries to access my site www.example.com, then my
server should execute the script ( which in turn will respond with HTML - so
a CGI script). If user tries to access an invalid url -
www.example.com/invalid, again server should execute the same script and so
forth.

Assuming the script name is test-cgi, I tried doing two things:

[1] I created a www directory and then made it a my DocumentRoot.

DocumentRoot "/usr/local/apache2/www"

[2] I gave the permission to run the cgi scripts to this directory
<Directory "/usr/local/apache2/www">
    Options Indexes FollowSymLinks +ExecCGI
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

[3]I made the default file to be my script when the directory is accessed
<IfModule dir_module>
    DirectoryIndex test-cgi
</IfModule>

[4] I mapped every request prefixed with "/" to be mapped to www folder
using ScriptAlias

ScriptAlias / "/usr/local/apache2/www/"

But when I try to access http://localhost/ , it throws me 403 Forbidden
error. Also, if I make any invalid request, for example - if try to access a
folder http://localhost/tmp/ or file http://localhost/tmpfile it gives me
URL Not found error. I was wondering what is the right way to fix my conf
file to get the desired output. 
-- 
View this message in context: http://www.nabble.com/Map-every-request-to-a-single-script-tp24979451p24979451.html
Sent from the Apache HTTP Server - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] Re: Map every request to a single script

Posted by Jaikishan Jalan <ja...@gmail.com>.
After trying out couple of solutions and here is what I did:

ScriptAliasMatch ^/(?!index.html).+ "/usr/local/apache2/cgi-bin/test-cgi"

So I map every request to my script except those which starts with
index.html. I want to keep the default index as index.html , reason being if
I make the default as script, then search engine will not be able to crawl
it which is bas.

On Sat, Aug 15, 2009 at 2:40 AM, Nicholas Sherlock <n....@gmail.com>wrote:

> jjalan wrote:
>
>> I am learning Apache HTTP Server and I was wondering what is the best
>> practice to map all the request valid or invalid to a single script on my
>> server.
>>
>
> We just:
>
> ErrorDocument 404 /index.php
>
> A cleaner solution would probably use mod_rewrite to just map everything to
> the location of your script.
>
> Cheers,
> Nicholas Sherlock
>
>
> ---------------------------------------------------------------------
> The official User-To-User support forum of the Apache HTTP Server Project.
> See <URL:http://httpd.apache.org/userslist.html> for more info.
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
>  "   from the digest: users-digest-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
>
>


-- 
Thanks,
Jaikishan

[users@httpd] Re: Map every request to a single script

Posted by Nicholas Sherlock <n....@gmail.com>.
jjalan wrote:
> I am learning Apache HTTP Server and I was wondering what is the best
> practice to map all the request valid or invalid to a single script on my
> server.

We just:

ErrorDocument 404 /index.php

A cleaner solution would probably use mod_rewrite to just map everything 
to the location of your script.

Cheers,
Nicholas Sherlock


---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org