At the advice of a friendly php-general reader, I tried the following:

RewriteEngine  on
Options +FollowSymlinks
RewriteBase    /issues/
RewriteCond    %{REQUEST_FILENAME}  -d
RewriteRule ^(.+)([/]?)$ $1/  [R]

RewriteRule ^([0-9]/[a-z]/[a-z0-9])([/]?)
/index.php?year=$1\&month=$2\&article=$3

And here's my /issues/index.php:

<?php

print_r($_GET);

?>

Requesting http://localhost/issues/2003/feb/issue/ gives a 404 file not
found (the logfile shows that it's looking for an un-rewritten URI).
Requesting http://localhost/issues/ displays "Array ( )" as expected.
Strangely, going to http://localhost/issues redirects me to the hostname
(which I have set to 'asdf', causing my browser to end up at
http://www.asdf.com).

I guess I should have said this earlier, but I'm testing on Win32/PHP
4.3.1/Apache 1.3.27, and have verified the problem on a FreeBSD platform as
well.

Anyway, thanks for any more pointers,
-Dan


"Dan Phiffer" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> So I'm trying to implement a URL system like so:
>
> http://domain.org/issues/2003/feb/article-name/
>
> such that http://domain.org/issues/index.php will display the requested
> page. I've read a little about this
> (http://www.alistapart.com/stories/succeed/) and have gotten it to work
for
> the most part, but there's one problem I'd like to resolve.
>
> Here's how I've got it set up:
>
> - I put a .htaccess file in http://domain.org/issues like so:
>
> RewriteEngine on
> RewriteRule !\.(gif|jpg|png|css|js)$ index.php
>
> - /issues/index.php contains code to respond to REQUEST_URI and serve
> content
> appropriately.
>
> - Requests to /issues/ should serve an index sort of page, which works
fine.
>
> However, if a request is made to /issues (no trailing slash), the browser
is
> sent an Error 400 Bad Request.
>
> I tried the following after looking at the URL Rewriting Guide
> (http://httpd.apache.org/docs/misc/rewriteguide.html):
>
> RewriteEngine  on
> RewriteBase    /issues/
> RewriteCond    %{REQUEST_FILENAME}  -d
> RewriteRule    ^(.+[^/])$           $1/  [R]
>
> Unfortunately, with this in place the browser displays a 302 Found message
> with a link to the same problematic URL (/issues). I'm still pretty new to
> mod_rewrite, so please bear with me if I'm doing something obviously wrong
> here.
>
> Thanks,
> -Dan
>
>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to