问题
I stupidly did a 301 redirect on websiteA.com to websiteB.com. After removing it from the .htaccess file the redirect is still in operation. I tried from outside the local network and it is still redirecting. I have cleared my cache and tried a different browser.
Does anybody have any suggestions?
UPDATE:
If I add a 302 redirect to this .htaccess file the site honours it. When I remove it, the old 301 redirect still happens.
.htaccess file for websiteA.com:
# -- concrete5 urls start --
Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
# -- concrete5 urls end --
#RewriteCond %{HTTP_HOST} ^.*$
#RewriteRule ^/?$ "http\:\/\/www\.websiteB\.co\.uk\/" [R=301,L]
回答1:
The browser caches the 301 Moved Permanently, until told otherwise. It is default behavior: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.2.
To fix it in IE9:
- Open IE9 and press Ctrl+Shift+P for private browsing
- Navigate to the problem URL
- Then go back to normal browsing and all should be fine again
回答2:
With Chrome, try to visit the website with Developers Console open (F12)
Make sure you have "Disable cache" checked under "Network" tab
This will bypass 301 redirect cache on browser-side.
回答3:
The permanent redirect cache is probably in the browser
and in most browsers it is tricky to remove it.
But first, try using a different browser to see if this is the case.
In case the problem is in the browser:
This happened to me before and cleaning the browser data for that website was not enough.
I also realized that there is a trick for each browser.
In Safari (for Mac), I needed to select "Reset Safari..." (No panic, with this option neither bookmarks neither extensions are deleted).
I cannot recall how I did it for Chrome but was less traumatic.
The lesson
When playing with redirects use [302] first.
After everything was tested ok, change the code to [301]
回答4:
Just delete the line about the Redirect.
And also everyone who has Google Chrome, do the following steps:
- Press CTRL + SHIFT + SUPR from your keyboard.
- Only check -> "Files and images stored in cache"
- Select in "Elements stored in cache since: Past week"
That will clear all your cache and you'll be fine.
回答5:
I know this is an old post but i spent some time on the Web and my server to find the answer.
If you created an .htaccess file with a permanent redirection, the server will copy this redirection in the following file : "/var/.htaccess".
You have to edit this file to remove the redirection before cleaning the cache of your browser.
It worked on my Debian Jessie.
回答6:
Try giving Apache a restart
(on Ubuntu servers: service apache restart
or /etc/init.d/apache2 restart
)
来源:https://stackoverflow.com/questions/9431164/cannot-remove-301-redirect