On 12/23/07, Phil Wild <philwild@xxxxxxxxx> wrote: > I am having trouble with my first attempts at using rewrite rules under > apache. I am not sure where I am going wrong and have spent the morning > googling to try and figure this out. > > I want to rewrite > http://www.example.com/doc/bin/view/TWiki/WebHome so it looks > like http://www.example.com/doc/WebHome where WebHome changes > > I have the following in my conf file: > ScriptAlias /doc/bin "/opt/twiki/bin" > Alias /doc/pub "/opt/twiki/pub" > Alias /doc "/opt/twiki" > > RewriteEngine On > RewriteLogLevel 9 > <Directory "/opt/twiki/bin"> > RewriteRule ^doc/([A-Z].*) /doc/bin/view/$1 [PT] [L] > > Any clues as to what I am doing wrong? > The error log does not contain any log entries relating to rewriting so I > think I am completely missing the mark... > Phil The RewriteRule should begin with a slash. Multiple flags are separated with commas, not by adding additional parameters (which should be ignored or cause an error.) RewriteRule ^/doc/([A-Z].*)$ /doc/bin/view/$1 [PT,L] The Alias commands serve content outside DocumentRoot. The Alias commands belong after the RewriteRules (just for logic. I do not know if the order matters.) Parameters do not require quotes. The third command makes the second line redundant. Needing RewriteRule's [L] flag indicates poor design (but is needed because sometimes the web administrator does not control the entire design.) For sanity, do not use the same identifier for multiple purposes. You are using "/doc/" as the external URL path and the indicator for internal redirection. This substitution: /doc/* -> /doc/abc/* allows for an infinite loop. Using: /doc/* -> /mydocs/abc/* cannot create infinite loops, does not require the [L] flag, and does not affect anything outside your control -- just the Alias commands. None of these commands belong with a Directory section. httpd cannot decide which directory to use until after the Rewrite and Alias commands have been processed. RewriteEngine On RewriteLogLevel 9 RewriteRule ^/doc/([A-Z].*)$ /tdocs/bin/view/$1 [PT] RewriteRule ^/doc/(.*)$ /tdocs/$1 [PT] ScriptAlias /tdocs/bin /opt/twiki/bin Alias /tdocs /opt/twiki HTH, solprovider --------------------------------------------------------------------- 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