Why is redirect NOT easy?


#1

Pausing a current redirect is a User Interface and User Experience nightmare!

The button “Deactivate redirect” is followed by an alert saying “Are you sure you want to immediately disable ?” … WTF? No, I don’t want to disable anything. I want to delete or temporarily pause the redirect. If I continue I get the page saying “Success. We have now deactivated …”

F you guys :slight_smile: I don’t want to kill my site. I just want to get rid of the redirect.

Cheers.


#2

What are you really trying to “do”, perhaps your taking the wrong approach. Re-directs aren’t meant to be added and deleted “temporarily”.

To specifically answer your questions, there are 2 issues that get in the way of “temporarily” changing a re-direct.

First, browsers tend to cache 301 redirects pretty intensely. After all 301 means “permanently moved”, browsers aren’t expecting that information to “temporarily change”. Anyway the fact that FF or Chrome or whatever is caching your re-direct has nothing to do with dreamhost.

Second reason is that changing a re-direct is actually a DNS change. Typically TTL at dreamhost is 4 hours, which means that if your local DNS server has recently cached the record it’s going to keep using that cached record for 4 hours from the time it was cached, even if it changed on dreamhost DNS. This is just how DNS works, nothing dreamhost specific. You can avoid this portion of the delay by using dreamhost DNS as your computer or routers local DNS, which is fine for testing, but might not be what you want to always use.

You could also avoid the second using a redirect within your .htaccess file, which might be the best way to go if you really need to “temporarily” change or disable them. Changing that type of re-direct is different, in that it doesn’t cause a DNS change, the drawback is there is no “button” in the panel, you have to mess with manually editing your file.


#3

Hi LakeRat,

thank you so much for your great response! You made me understand a few things. Thanks :slight_smile:

What I try to do is this:

  • I have an “old” event site: 2014.event.xy and a new event site: 2015.event.xy
  • 2015.event.xy redirects to 2014.event.xy
  • Since I want to start working on 2015.event.xy now (at night :slight_smile: I have to “temporarily” pause the redirect–otherwise I can’t work on it, right?

Well, that’s my problem.


#4

The best way for you to do that is to use a redirect line in the domains .htaccess file.

Once you have it set up you could simply edit the file, comment out the redirect line to remove it (or conversely, remove the comment marker to re-enable the redirect), then re-save the file to the server. That type of re-direct will take effect almost immediately, and you should be able to ctrl-f5 refresh in the browser once or twice to get rid if anything the browser is trying to cache. (there also will NOT be a DNS change in the background doing it this way).

I’m surprised but I could not find the exact example you need in the dreamhost wiki, lots of various .htaccess examples but I don’t see this one. This thread in the forum has a few examples that might help tho.


#5

I sometimes type a URL for a page on my site inside of navigating within the site.

I can’t remember if the subdirectory is “contact” or “contacts” so I sometimes get a 404 error.

I’d like to set up a redirect in the .htaccess file but no matter what I do I get the 500 error described above for many of the pages on the site, including the redirect.

I’d like /sitename/contact/ or /sitename/contact to forward to /sitename/contacts/, which would resolve to /sitename/contacts/index.html.

What would be the correct syntax, or will I need to use rewrite?

(The ErrorDocument 404 directive works fine.)