By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
437,889 Members | 1,044 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 437,889 IT Pros & Developers. It's quick & easy.

mod rewrite

P: n/a
How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server error.
If I remove the $ in front of the 1 then it does but ofcourse all my links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or [QSA])
I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole url?)
In any case I can't see how its an error?

Thanks,
Jon

May 3 '07 #1
Share this Question
Share on Google+
6 Replies


P: n/a
Jon Slaughter wrote:
How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server error.
If I remove the $ in front of the 1 then it does but ofcourse all my links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or [QSA])
I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole url?)
In any case I can't see how its an error?

Thanks,
Jon
Jon,

Try alt.apache.configuration - where they specialize in these questions.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
May 3 '07 #2

P: n/a
On Wed, 02 May 2007 22:15:18 -0500, Jon Slaughter wrote:
How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server error.
If I remove the $ in front of the 1 then it does but ofcourse all my links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or [QSA])
I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole url?)
In any case I can't see how its an error?

Thanks,
Jon
http://www.workingwith.me.uk/articles/scripting/mod_rewrite will probably
help you get to grips with mod_rewrite, at least it scratches the surface
of what's possible.

Sh.

May 3 '07 #3

P: n/a

"Schraalhans Keukenmeester" <in*****@invalid.spamwrote in message
news:pa***************************@invalid.spam...
On Wed, 02 May 2007 22:15:18 -0500, Jon Slaughter wrote:
>How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server
error.
If I remove the $ in front of the 1 then it does but ofcourse all my
links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or
[QSA])
I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole
url?)
In any case I can't see how its an error?

Thanks,
Jon

http://www.workingwith.me.uk/articles/scripting/mod_rewrite will probably
help you get to grips with mod_rewrite, at least it scratches the surface
of what's possible.
Yeah, I've seen that site... but there seems to be something wrong with my
code that isn't explained on such basic sites

RewriteRule ^(.*)$ 1\.php [nc]

works fine for what its does but I cannot refer to the group (.*) using $1
like I am suppose to be. If the pattern is not so general then it works...
it acts like its not matching correctly.

May 3 '07 #4

P: n/a
On May 3, 5:15 am, "Jon Slaughter" <Jon_Slaugh...@Hotmail.comwrote:
How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server error.
If I remove the $ in front of the 1 then it does but ofcourse all my links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or [QSA])

I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole url?)
In any case I can't see how its an error?

Thanks,
Jon
Why the n flag? That's what's causing the server error, I think.

May 3 '07 #5

P: n/a

"Chung Leong" <ch***********@hotmail.comwrote in message
news:11**********************@y5g2000hsa.googlegro ups.com...
On May 3, 5:15 am, "Jon Slaughter" <Jon_Slaugh...@Hotmail.comwrote:
>How the heck do I get mod rewrite to add extensions to any file?

RewriteRule ^(.*)$ $1\.php [nc]

To me that should find any group of characters(such as any path) and then
add the .php to the end? But this doesn't work and gives me a server
error.
If I remove the $ in front of the 1 then it does but ofcourse all my
links
end up as 1.php

I can also do something like

RewriteRule ^3(.*)$ $1\.php [nc]

and all my links will be redirected to 3---.php

What I want is to take

[url] into [url].php

(without query string and or other special chars such as ([^&?]&) or
[QSA])

I just can't understand why the following does not work ;/

RewriteRule ^(.*)$ $1\.php [nc]

$1 should be whatever is matched by (.*)? (which should be the whole
url?)
In any case I can't see how its an error?

Thanks,
Jon

Why the n flag? That's what's causing the server error, I think.
no
means no case. wasn't working because of recursion I guess,

#RewriteCond %{REQUEST_URI} !\.php$

RewriteRule ^(.*)[/]$ /Index.php\?$1/Main.php

essentially works but need to par it down to only work in specific cases

May 3 '07 #6

P: n/a
Jon Slaughter wrote:
RewriteRule ^(.*)[/]$ /Index.php\?$1/Main.php

essentially works but need to par it down to only work in specific cases
RewriteRule ^(case1|case2|case3)[/]$ /Index.php\?$1/Main.php

--
Toby A Inkster BSc (Hons) ARCS
http://tobyinkster.co.uk/
Geek of ~ HTML/SQL/Perl/PHP/Python/Apache/Linux
May 4 '07 #7

This discussion thread is closed

Replies have been disabled for this discussion.