Rewrite redirects

Patrick gibblertron at
Fri Sep 28 22:24:34 UTC 2012

You can probably do something like:

RewriteRule ^([^/])\.html /content/$1.html [PT]

^ inside the square brackets means "not", so a pattern matching anything but /.

Or you could be go the other way:

RewriteRule ^([a-zA-Z0-9_-]+)\.html /content/$1.html [PT]

Where you explicitly include the characters that are used in your html


On Fri, Sep 28, 2012 at 2:27 PM, Jack Stone <jacks at> wrote:
> On 9/28/2012 3:08 PM, Jack Stone wrote:
>> I thought I had this figured out but discovered I have a BIG flaw with my
>> .htaccess redirects After days of searching and experimenting, I still can't
>> get this to do what I intended.
>> I have moved all of the content on a web site from the web root to a
>> different directory. Now I need toredirect the URL requests from the old
>> location to the new one. Instead of issuing a 301 error, I want to first
>> redirect to an info page, let's call it "info.htm." Here's what I have now
>> in the web root's .htaccess.
>> Here's the way it was/is:
>> ~webroot/lots_of.html
>> ....and now changed to this:
>> ~webroot/content/lots_of.html
>> Using the apache mod_rewritein .htaccess
>> RewriteEngine on
>> RewriteRule /~webroot/(.*\.html) /^info.htm [PT]
>> ....which is supposed to redirect any page with the extension ".html" to
>> the info.htm page. BUT, alas any "*.html page in any directory will redirect
>> back to the info.htm page!! What I wanted is that only the "*.html pages in
>> the ~webroot to be redirected to the info page.
>> I hope this make sense and I hope someone can give me a tip on how to
>> limit the redirects to only the webroot pages.
>> Thanks in advance.....
> For the above, now this works if I use the following:
> RewriteBase /~webroot/
> RewriteRule ^radio\.html$ /^info.htm [PT]
> RewriteRule ^v20\.html$ /^info.htm [PT]
> So, now if the above are requested:
> http://www.webroot/content/radio.html it doesn't redirect to the info page.
> That's what I want, but there are 100s of "html" files in webroot/content
> and I figured there MUST be a way to wildcard the syntax, something like
> ^.*\.html$ so I don't need to list every specific html file.
> I believe I'll have it if I can figure that out now.
> Any thoughts?
> --
> --
> All the best,
> Jack
> _______________________________________________
> freebsd-questions at mailing list
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at"

More information about the freebsd-questions mailing list