Question

301 Redirect - only the root folder to another page

Posted December 25, 2021 102 views
Apache

Hello community

I’m trying to do a 301 redirect on my website. My aim is to redirect only a certain folder to another page but not redirect if someone has entered a specific URL in that folder.

Let me clarify what I mean. I have a folder - toberedirected, I want everytime someone opens https://www.mydomain.com/toberedirected
to be redirected to https://www.mydomain.com/placetoredirect.php however if someone opens https://www.mydomain.com/toberedirected/something.php not to be redirected.

For some reason, I’ve not been able to make it work. Nothing actually happens

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
Submit an Answer
1 answer

I’ll recommend using RedirectMatch.

You can read more about it here :

https://httpd.apache.org/docs/2.4/mod/mod_alias.html

Basically, this directive is equivalent to Redirect, but makes use of regular expressions, instead of simple prefix matching. The supplied regular expression is matched against the URL-path, and if it matches, the server will substitute any parenthesized matches into the given string and use it as a filename. In your case, the redirect statement will be:

RedirectMatch 301 ^/toberedirected/$ https://www.mydomain.com/toberedirected/something.php

Hope this helps!

  • Thanks for getting to me so quick!

    Sadly this doesn’t work for me as well :(

    • Hi @brendRos,

      That’s strange, I tested it and it’s working for me.

      Maybe you do not have mod_alias enabled. In order for any Redirect to work, you’ll need to have it enabled.

      Don’t worry, it’s really easy to enable it:

      a2enmod alias
      

      Next check your config

      apache2ctl configtest
      

      If no error message appears, restart the httpd server in order to activate this configuration change:

      service apache2 restart