301 redirect rule
-
Hi there,
I have a website that has hundreds of links with a "question mark" at the end of URLs. For example:
http://www.domain.com/directory/page.html?
http://www.domain.com/directory/another-directory?
http://www.domain.com/directory/yet-another-directory/?I'm want to place a wildcard redirect on the .htaccess file but don't know what exactly to add. Ideally I want the URLs above to be:
http://www.domain.com/directory/page.html
http://www.domain.com/directory/another-directory/
http://www.domain.com/directory/yet-another-directory/Any help is most appreciated.
Thanks
Issa -
Hmmmm...you shouldn't need the RewriteCond. The regex for the rule itself merely needs to end in ?$, indicating that the ? must be the last character on the line.
And your rule looks to me like it will APPEND a question mark, not remove it!
I haven't tested this, but this should work as a blanket rule for all files and folders:
RewriteRule ^(.*)?$ /$1 [L,R=301]
-
Hi again,
Thank you for all this so far, however, it still doesn't help me very much. If i will need to follow the same system I will need to create a redirect line for each directory level and variation level I have on the website. Please not that in my initial question i said I have hundreds of cases of this issue.
I have discussed this issue with friends who came up with a solution that I thought i should share with you guys here. The redirect code should be:
RewriteCond %{THE_REQUEST} ^(GET|HEAD|POST)\ /[^\ ?]*?($|\ )
RewriteRule ^(.*)$ /$1? [L,R=301]
The first line ensures that the rule will only deal with question marks that appears at the end of the URL not the middle (as you kindly mentioned before). The second line then removes the question mark.
Plus, its just 2 lines, 1 rule which is a much shorter format
I hope this will be useful to someone else, it surely has saved me a lot of trouble, its now implemented and works perfectly.
Issa
-
Donford's correct. The "." matches any character; the "*" says 0 or more times; the $ means end of line.
-
the .*$ is the wildcard you can redirect on match keyword or directory.
Here is a good site that helps with this, special note the "Wildcard Redirect" section.
The question mark is usually an indication that the urls are dynamic if that is the case you may also want to review this helpful post on seOverflow.com about dynamic urls.
-
Not sure how the status of this question has changed to "Answered" but no thats not the right answer I'm afraid. What I was asking for is a wildcard redirect not redirect for the three examples i provided.
As mentioned i have hundreds of pages that require this change.
Issa
-
Donford's answer looks right to me, but I'd test it on your particular server as well.
My experience with .htaccess is that the various test tools don't always perform exactly the same as the server itself; also different webserver software (even different versions of Apache!) seem to have different results for the same patterns.
So...it's not always even sufficient to test on your development server.
-
This should work..
Test it out and see if we're on the right track.
RewriteEngine on
RedirectMatch 301 ^page.html?.$ http://www.domain.com/directory/page.html
RedirectMatch 301 ^/another-directory?.$ http://www.domain.com/directory/another-directory/
RedirectMatch 301 ^/yet-another-directory/?.*$ http://www.domain.com/directory/yet-another-directory/
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Is there any benefit to changing 303 redirects to 301?
A year ago I moved my marketplace website from http to https. I implemented some design changes at the same time, and saw a huge drop in traffic that we have not recovered from. I've been searching for reasons for the organic traffic decline and have noticed that the redirects from http to https URLs are 303 redirects. There's little information available about 303 redirects but most articles say they don't pass link juice. Is it worth changing them to 301 redirects now? Are there risks in making such a change a year later, and is it likely to have any benefits for rankings?
Intermediate & Advanced SEO | | MAdeit0 -
301 redirect to search results page?
Hi - we just launched our redesigned website. On the previous site, we had multiple .html pages that contained links to supporting pdf documentation. On this new site, we no longer have those .html landing pages containing the links. The question came up, should we do a search on our site to gather a single link that contains all pdf links from the previous site, and set up a redirect? It's my understanding that you wouldn't want google to index a search results page on your website. Example: old site had the link http://www.oldsite.com/technical-documents.html new site, to see those same links would be like: http://www.newsite.com/resources/search?View+Results=&f[]=categories%3A196
Intermediate & Advanced SEO | | Jenny10 -
Blog subdomain not redirecting
Over the last few weeks I have been focused on fixing high and medium priority issues, as reported by the Moz crawler, after a recent transition to WordPress. I've made great progress, getting the high priority issues down from several hundred (various reasons, but many duplicates for things like non-www and www versions) to just five last week. And then there's this weeks report. For reasons I can't fathom, I am suddenly getting hundreds of duplicate content pages of the form http://blog.<domain>.com</domain> (being duplicates with the http://www.<domain>.com</domain> versions). I'm really unclear on why these suddenly appeared. I host my own WordPress site ie WordPress.org stuff. In Options / General everything refers to http://www.<domain>.com</domain> and has done for a number of weeks. I have no idea why the blog versions of the pages have suddenly appeared. FWIW, the non-www version of my pages still redirect to the www version, as I would expect. I'm obviously pretty concerned by this so any pointers greatly appreciated. Thanks. Mark
Intermediate & Advanced SEO | | MarkWill0 -
Redirect HTTP to HTTPS
Hello, Simple question - Should we be redirecting our HTTP pages to HTTPS? If yes, why, if not, why? Thanks!
Intermediate & Advanced SEO | | HB170 -
When is it time to kill 301 redirects
3 months we updated our site design design and as such lots of page urls changed. At the time we 301 redirected about 100 pages. (All pages are on the same domain - 301 redirects like .com/about-us/company to .com/company) Anyhow my question is should I leave these redirects active indefinitely or kill them assuming value has passed through by now? Your Thoughts are welcomed. Thanks, Glen.
Intermediate & Advanced SEO | | AdvanceSystems0 -
Should /node/ URLs be 301 redirect to Clean URLs
Hi All! We are in the process of migrating to Drupal and I know that I want to block any instance of /node/ URLs with my robots.txt file to prevent search engines from indexing them. My question is, should we set 301 redirects on the /node/ versions of the URLs to redirect to their corresponding "clean" URL, or should the robots.txt blocking and canonical link element be enough? My gut tells me to ask for the 301 redirects, but I just want to hear additional opinions. Thank you! MS
Intermediate & Advanced SEO | | MargaritaS0 -
301 or 302 Redirects to Mobile Site
When it's detected that a mobile device is accessing the site it has the ability to redirect from www.example.com to m.example.com. Does it make more sense to employ a 301 or 302 redirect here? Google says a 301 but does not explain why (although usually I stick to "when in doubt, 301") . It seems like a 302 would prevent passing link juice to the mobile site and having mobile-optimized results also showing up in Google's index. What is the preference here?
Intermediate & Advanced SEO | | SEOTGT0 -
Not allowing me 301 Redirect
I am trying redirect my old site to my new site, both on the same domain. For one reason or another, I am having a hard time redirecting the some of the old urls to the new site. Please let me know how I can fix this issue. Below are the following old urls that are not allowing me to redirect: <colgroup><col width="636"></colgroup>
Intermediate & Advanced SEO | | Melia
| http://www.meliacaribetropical.com/press/melia-caribe-tropical-announces-fall-promotion.html |
| http://www.meliacaribetropical.com/press/melia-international-brand-overhaul.html |
| http://www.meliacaribetropical.com/spanish/accommodations/ |
| http://www.meliacaribetropical.com/spanish/dining/ |
| http://www.meliacaribetropical.com/spanish/entertainment/ |
| http://www.meliacaribetropical.com/spanish/events/ |
| http://www.meliacaribetropical.com/spanish/flintstones/ |
| http://www.meliacaribetropical.com/spanish/gallery/ |
| http://www.meliacaribetropical.com/spanish/gallery/beach.html |
| http://www.meliacaribetropical.com/spanish/gallery/dining.html |
| http://www.meliacaribetropical.com/spanish/gallery/pools.html |
| http://www.meliacaribetropical.com/spanish/press/ |
| http://www.meliacaribetropical.com/spanish/press/melia-caribe-tropical-announces-fall-promotion.html |
| http://www.meliacaribetropical.com/spanish/press/melia-international-brand-overhaul.html |0