Re: [users@httpd] Rewriting all URLs to /index.php

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 30, 2005 at 09:58:36AM +0400, Denis Gerasimov wrote:
 
> I put the following lines to my VirtualHost section:
> 
> RewriteEngine On
> RewriteCond %{REQUEST_FILENAME} ^.*\.html$
> RewriteRule ^.*$ /index.php?url=%{REQUEST_URI}&%{QUERY_STRING} [L]
> 
> e.g.
> /news/index.html?var1=value1 -> /index.php?url=/news/index.html&var1=value1
> 
> However I noticed that url is not encoded in this case. Is there something
> like urlencode() in Apache to fix that? Also are thre any better ways of
> handling this?

The RewriteCond line is unnecessary, and you don't need to manually add
the query string. Remove the RewriteCond line and use the 'QSA'
RewriteRule flag:

RewriteEngine on
RewriteRule ^.*\.html$  /index.php?url=%{REQUEST_URI} [L,QSA]

If you want to urlescape, you can make use of the internal 'unescape'
rewritemap:

RewriteEngine on
RewriteMap unescape int:unescape
RewriteRule ^.*\.html$  /index.php?url=${unescape:%{REQUEST_URI}}
[L,QSA]

Tweak as needed. =)

--n

-- 
<huey> dd of=/dev/fd0 if=/dev/flippy bs=1024
<huey> ^^^ Making Flippy Floppy


---------------------------------------------------------------------
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@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux