undefined
Skip to content
Moz logo Menu open Menu close
  • Products
    • Moz Pro
    • Moz Pro Home
    • Moz Local
    • Moz Local Home
    • STAT
    • Moz API
    • Moz API Home
    • Compare SEO Products
    • Moz Data
  • Free SEO Tools
    • Domain Analysis
    • Keyword Explorer
    • Link Explorer
    • Competitive Research
    • MozBar
    • More Free SEO Tools
  • Learn SEO
    • Beginner's Guide to SEO
    • SEO Learning Center
    • Moz Academy
    • MozCon
    • Webinars, Whitepapers, & Guides
  • Blog
  • Why Moz
    • Digital Marketers
    • Agency Solutions
    • Enterprise Solutions
    • Small Business Solutions
    • The Moz Story
    • New Releases
  • Log in
  • Log out
  • Products
    • Moz Pro

      Your all-in-one suite of SEO essentials.

    • Moz Local

      Raise your local SEO visibility with complete local SEO management.

    • STAT

      SERP tracking and analytics for enterprise SEO experts.

    • Moz API

      Power your SEO with our index of over 44 trillion links.

    • Compare SEO Products

      See which Moz SEO solution best meets your business needs.

    • Moz Data

      Power your SEO strategy & AI models with custom data solutions.

    Track AI Overviews in Keyword Research
    Moz Pro

    Track AI Overviews in Keyword Research

    Try it free!
  • Free SEO Tools
    • Domain Analysis

      Get top competitive SEO metrics like DA, top pages and more.

    • Keyword Explorer

      Find traffic-driving keywords with our 1.25 billion+ keyword index.

    • Link Explorer

      Explore over 40 trillion links for powerful backlink data.

    • Competitive Research

      Uncover valuable insights on your organic search competitors.

    • MozBar

      See top SEO metrics for free as you browse the web.

    • More Free SEO Tools

      Explore all the free SEO tools Moz has to offer.

    NEW Keyword Suggestions by Topic
    Moz Pro

    NEW Keyword Suggestions by Topic

    Learn more
  • Learn SEO
    • Beginner's Guide to SEO

      The #1 most popular introduction to SEO, trusted by millions.

    • SEO Learning Center

      Broaden your knowledge with SEO resources for all skill levels.

    • On-Demand Webinars

      Learn modern SEO best practices from industry experts.

    • How-To Guides

      Step-by-step guides to search success from the authority on SEO.

    • Moz Academy

      Upskill and get certified with on-demand courses & certifications.

    • MozCon

      Save on Early Bird tickets and join us in London or New York City

    Unlock flexible pricing & new endpoints
    Moz API

    Unlock flexible pricing & new endpoints

    Find your plan
  • Blog
  • Why Moz
    • Digital Marketers

      Simplify SEO tasks to save time and grow your traffic.

    • Small Business Solutions

      Uncover insights to make smarter marketing decisions in less time.

    • Agency Solutions

      Earn & keep valuable clients with unparalleled data & insights.

    • Enterprise Solutions

      Gain a competitive edge in the ever-changing world of search.

    • The Moz Story

      Moz was the first & remains the most trusted SEO company.

    • New Releases

      Get the scoop on the latest and greatest from Moz.

    Surface actionable competitive intel
    New Feature

    Surface actionable competitive intel

    Learn More
  • Log in
    • Moz Pro
    • Moz Local
    • Moz Local Dashboard
    • Moz API
    • Moz API Dashboard
    • Moz Academy
  • Avatar
    • Moz Home
    • Notifications
    • Account & Billing
    • Manage Users
    • Community Profile
    • My Q&A
    • My Videos
    • Log Out

The Moz Q&A Forum

  • Forum
  • Questions
  • Users
  • Ask the Community

Welcome to the Q&A Forum

Browse the forum for helpful insights and fresh discussions about all things SEO.

  1. Home
  2. SEO Tactics
  3. Technical SEO
  4. How to force Wordpress to remove trailing slashes?

Moz Q&A is closed.

After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.

How to force Wordpress to remove trailing slashes?

Technical SEO
6
9
45.5k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as question
Log in to reply
This topic has been deleted. Only users with question management privileges can see it.
  • james-tb
    james-tb last edited by Aug 17, 2015, 7:02 PM

    I've searched around quite a bit for a solution here, but I can't find anything. I apologize if this is too technical for the forum.

    I have a Wordpress site hosted on Nginx by WP Engine. Currently it resolves requests to URLs either with or without a trailing slash.

    So, both of these URLs are functional:

    <code>mysite.com/single-post</code>
    

    and

    <code>mysite.com/single-post/</code>
    

    I would like to remove the trailing slash from all posts, forcing mysite.com/single-post/ to redirect to mysite.com/single-post. I created a redirect rule on the server:

    ^/(.*)/$ -> /$1

    and this worked well for end-users, but rendered the admin panel inaccessible. Somewhere, Wordpress is adding a trailing slash back on to the URL mysite.com/wp-admin, resulting in a redirect loop. I can't see anything obvious in .htaccess.

    Where is this rule adding a trailing slash to 'wp-admin' established?

    Thanks very much

    1 Reply Last reply Reply Quote 0
    • BlueprintMarketing
      BlueprintMarketing last edited by Nov 13, 2018, 2:01 PM Nov 13, 2018, 1:49 PM

      WPEis run on a base server using Apache with a Nginx proxy so you can use the WP engine  301 redirect system built-in or you can simply add a redirect to the HTAccess file. If you would like to use a tool to do this I recommend this one another alternative is to ask WP engine to make a change for you.https://www.aleydasolis.com/htaccess-redirects-generator/non-slash-vs-slash-urls/ApacheJust copy to your htaccess:```
      https://example.com/page/

      **https://example.com/page** 
      ``` 
      <label for="nonslash">**Slash to Non-Slash URLs**</label>
      
      > <ifmodule mod_rewrite.c="">RewriteEngine on
      > RewriteCond %{REQUEST_FILENAME} !-d
      > RewriteRule ^(.*)/$ /$1 [L,R=301]</ifmodule>
      
      **Non-Slash to Slash URLs**
      
      ```
      ****Apache**
      https://example.com/page**
      

      https://example.com/page/

      
      > <ifmodule mod_rewrite.c="">RewriteEngine on
      > RewriteCond %{REQUEST_FILENAME} !-f
      > RewriteRule ^(.*[^/])$ /$1/ [L,R=301]</ifmodule>
      
      

      USEING Nginx to do

      **https://example.com/page/**
      

      https://example.com/page

      
      As you see, there is one tiny difference between those two URLs, and it’s the trailing slash at the end. In order to avoid duplicate content, if you are using Nginx you can **remove the trailing slash from Nginx** URLs.
      
      Place this inside your virtual host file in the server {} block configuration:
      
      > ```
      > rewrite ^/(.*)/$ /$1 permanent;
      > ```
      
      Full example:
      
      > ```
      > server {
      > listen 80;
      > server_name www.mysite.com;
      > rewrite ^/(.*)/$ /$1 permanent;
      > }
      > ```
      
      All done, now Nginx will remove all those trailing slashes.
      
      

      USEING Nginx to do
      https://example.com/page
      https://example.com/page/

      
      Add a trailing slash by placing this inside your virtual host file in the server {} block configuration:
      
      > ```
      > rewrite ^(.*[^/])$ $1/ permanent;
      > ```
      
      Full example:
      
      > ```
      > server {
      > listen 80;
      > server_name www.mysite.com;
      > rewrite ^(.*[^/])$ $1/ permanent;
      > }
      > ```
      
      From now on, Nginx should add your trailing slash automatically to every url
      
      *   https://www.scalescale.com/tips/nginx/add-trailing-slash-nginx/
      *   https://www.scalescale.com/tips/nginx/nginx-remove-trailing-slash/
      
       I hope this helps,
      
      Tom
      1 Reply Last reply Reply Quote 0
      • topic:timeago_earlier,3 years
      • ATP
        ATP last edited by Aug 20, 2015, 4:09 PM Aug 20, 2015, 5:22 AM

        Hi John, sorry ive been on leave so not checked back on the  forums.

        Glad it looks like its working for you. I dont think the comments do anything except signify where word press has begun writing to the .htaccess (i dont run wordpress so can't be sure). Normally comments do nothing but signify something useful to the user.

        I can try to breakdown the code a little for you, but my htaccess isn't fantastic so its by no means complete.

        Firstline:  RewriteCond%{REQUEST_FILENAME}!-d

        RewriteCond% = This says use this condition if....
        {REQUEST_FILENAME}!-d =  ... is NOT a directory

        RewriteRule^(.*)/$ /$1 [L,R=301]
        I believe this bit takes a snapshot of the url upto the final / then rewrites it to that snapshot.

        The combination of these must mean it doesn't affect your wordpress admin directory. I know this code can break if your install is within a directory (as is discussed in the stackover flow link) but they have provided a solution for that in that topic. I would say test if on your live website to make complete sure it will work as this may be slightly different to your local install. Have a back-up ready just incase it doesn't.

        Make sure you check every url including

        Homepage
        Pages
        Posts
        Category Pages
        Sub Category Pages
        Post Pages
        Any images or files

        To make sure it is working as expected on all of them.

        1 Reply Last reply Reply Quote 1
        • james-tb
          james-tb last edited by Aug 19, 2015, 12:00 PM Aug 19, 2015, 12:00 PM

          Thanks so much, ATP! It looks like writing the condition into .htaccess does the trick—at least for my local install. Is this because the commands located within the

          BEGIN WordPress

          END WordPress

          comments only apply to URLs outside of the WP admin area?

          Thanks again, ATP—that was a very thorough and helpful response!

          1 Reply Last reply Reply Quote 0
          • evolvingSEO
            evolvingSEO last edited by Aug 19, 2015, 1:38 AM Aug 19, 2015, 1:38 AM

            Hi John

            Did ATP's solution help you out? Let us know if we can look into this further!

            1 Reply Last reply Reply Quote 0
            • ATP
              ATP last edited by Aug 19, 2015, 11:51 AM Aug 18, 2015, 12:36 PM

              Hi John,

              I asked something similar myself something myself but im on the Magento platform. This should matter as the solution wasn't platform specific. It just involved editing htaccess file. If your up for editing your .htacccess file then it could be of some use. The topic URL is below and it contains multiple solutions for editing and removing the / and the debugging process we went through along the way. (Courtesy of Andy and Dirk) Hopefully its of some use to you

              https://moz.com/community/q/cms-pages-multiple-urls

              SUMMARY:
              If you know how to edit your .htaccess and your ready to dive straight in this code should do it.

              RewriteCond%{REQUEST_FILENAME}!-d
              RewriteRule^(.*)/$ /$1 [L,R=301]

              If you want the page with explanations and walk-through please see the original topic as editing your htaccess  badly can cause all sorts of errors.

              Edit: I realised i was probably a tiny bit lazy and should of probably included this link which is the original link i got sent from stackoverflow with instructions on how to to edit your .htaccess file.

              http://stackoverflow.com/questions/21417263/htaccess-add-remove-trailing-slash-from-url

              Dirks answer later in the post offer guidance on applying it to certain parameters which should prove helpful if your still having loop problems with the admin page.

              1 Reply Last reply Reply Quote 2
              • james-tb
                james-tb last edited by Aug 18, 2015, 11:13 AM Aug 18, 2015, 11:13 AM

                Thanks for the replies, Donna, Martijn. I am running Yoast and considered adding the trailing slash, but:

                -Most of the inbound links we have are to URLs with no slash

                -The slash style seems a little dated in general-few sites use them these days.

                I'd really love to just figure out how to solve the issue a little closer to the root.

                1 Reply Last reply Reply Quote 0
                • Martijn_Scheijbeler
                  Martijn_Scheijbeler last edited by Aug 18, 2015, 4:03 AM Aug 18, 2015, 4:03 AM

                  Hi John,

                  It seems obvious, but why not go for a adding a trailing slash to every URL instead or removing it, would solve your issues at least.

                  1 Reply Last reply Reply Quote 1
                  • DonnaDuncan
                    DonnaDuncan last edited by Aug 18, 2015, 12:41 AM Aug 18, 2015, 12:41 AM

                    Are you using the yoast SEO plugin? There is a setting under Advanced > Permalinks that forces a trailing slash onto URLs. I'd try looking at that first.

                    1 Reply Last reply Reply Quote 1
                    • 1 / 1
                    1 out of 9
                    • First post
                      1/9
                      Last post

                    Got a burning SEO question?

                    Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.


                    Start my free trial


                    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.

                    • See all categories

                    Related Questions

                    • Dandelion

                      What should I name my Wordpress homepage?

                      I work almost exclusively in wordpress now. And I always hesitate when it comes to naming a site's homepage. I have to give it a name -  right? I usually pick the business name or /home. And then that is identifies as the site's static homepage in the Wordpress settings and it works just fine. But I've started to get warning that it is an issue because it creates redirects.  For example, I just ran the Ryte service analysis on a website and it warned me about "Non-indexable pages with high relevance" and it's basically my homepage that has 29 incoming links that "passes all pagerank to https://ourdomain/home But what am I supposed to call my homepage if not "Home"? It's not like the old days where anyone has to type it in. The root domain loads the homepage just as it should. Can anybody advise me regarding best practices for what to name a Wordpress homepage for good SEO? With thanks in advance for your help.

                      Technical SEO | Sep 18, 2020, 12:15 AM | Dandelion
                      0
                    • vikasnwu

                      Using 410 To Remove URLs Starting With Same Word

                      We had a spam injection a few months ago.  We successfully cleaned up the site and resubmitted to google.  I recently received a notification showing a spike in 404 errors. All of the URLS have a common word at the beginning injected via the spam: sitename.com/mono
                      sitename.com/mono.php?buy-good-essays
                      sitename.com/mono.php?professional-paper-writer There's about 100 total URLS with the same syntax with the word "mono" in them.  Based on my research, it seems that it would be best to serve a 410.  I wanted to know what the line of HTACCESS code would be to do that in bulk for any URL that has the word "mono" after the sitename.com/

                      Technical SEO | Nov 4, 2018, 10:46 PM | vikasnwu
                      0
                    • Pack

                      Redirect non slash to slash

                      Hello SEO gurus We have an issue here ( www.xyz.com.au) is having 200 responses www.xyz.com.au and www.xyz.com.au/ ( when i ran the crawl test i found this ) We have been advised to do a 301 from non slash to slash ( as our other pages are showing up with slash ) for the consistency we decided to go with this but our devs just couldnt do it. Error is - redirect loop and this site is a wordpress one Can anyone help us with this issue? Help is much appreciated.

                      Technical SEO | Dec 15, 2015, 12:55 PM | Pack
                      0
                    • shawn81

                      Should 301-ed links be removed from sitemap?

                      In an effort to do some housekeeping on our site we are wanting to change the URL format for a couple thousand links on our site. Those links will all been 301 redirected to corresponding links in the new URL format. For example, old URL format: /tag/flowers as well as search/flowerswill be 301-ed to, new URL format: /content/flowers**Question:**Since the old links also exist in our sitemap, should we add the new links to our sitemap in addition to the old links, or replace the old links with new ones in our sitemap? Just want to make sure we don’t lose the ranking we currently have for the old links.Any help would be appreciated. Thanks!

                      Technical SEO | Jan 6, 2014, 4:25 PM | shawn81
                      1
                    • allstatetransmission

                      Removing images from site and Image Sitemap SEO advice

                      Hello again, I have received an update request where they want me to remove images from this site (as of now its a bunch of thumbnails) current page design: http://1stimpressions.com/portfolio/car-wraps/ and turn it into a new design which utilized a slider (such as this): http://1stimpressions.com/portfolio/ They don't want the thumbnails on the page anymore. My question is since my site has a image sitemap that has been indexed will removing all the images hurt my SEO greatly? What would the recommended steps to take to reduce any SEO damage be, if so? Thank you again for your help, always great and very helpful feedback! 🙂 cheers!

                      Technical SEO | Nov 7, 2013, 2:24 PM | allstatetransmission
                      0
                    • M_D_Golden_Peak

                      How to Remove /feed URLs from Google's Index

                      Hey everyone, I have an issue with RSS /feed URLs being indexed by Google for some of our Wordpress sites. Have a look at this Google query, and click to show omitted search results. You'll see we have 500+ /feed URLs indexed by Google, for our many category pages/etc. Here is one of the example URLs: http://www.howdesign.com/design-creativity/fonts-typography/letterforms/attachment/gilhelveticatrade/feed/. Based on this content/code of the XML page, it looks like Wordpress is generating these: <generator>http://wordpress.org/?v=3.5.2</generator> Any idea how to get them out of Google's index without 301 redirecting them? We need the Wordpress-generated RSS feeds to work for various uses. My first two thoughts are trying to work with our Development team to see if we can get a "noindex" meta robots tag on the pages, by they are dynamically-generated pages...so I'm not sure if that will be possible. Or, perhaps we can add a "feed" paramater to GWT "URL Parameters" section...but I don't want to limit Google from crawling these again...I figure I need Google to crawl them and see some code that says to get the pages out of their index...and THEN not crawl the pages anymore. I don't think the "Remove URL" feature in GWT will work, since that tool only removes URLs from the search results, not the actual Google index. FWIW, this site is using the Yoast plugin. We set every page type to "noindex" except for the homepage, Posts, Pages and Categories. We have other sites on Yoast that do not have any /feed URLs indexed by Google at all. Side note, the /robots.txt file was previously blocking crawling of the /feed URLs on this site, which is why you'll see that note in the Google SERPs when you click on the query link given in the first paragraph.

                      Technical SEO | Aug 13, 2013, 2:56 PM | M_D_Golden_Peak
                      0
                    • TomLondon

                      Pages removed from Google index?

                      Hi All, I had around 2,300 pages in the google index until a week ago. The index removed a load and left me with 152 submitted, 152 indexed? I have just re-submitted my sitemap and will wait to see what happens. Any idea why it has done this? I have seen a drop in my rankings since. Thanks

                      Technical SEO | Mar 25, 2013, 5:36 PM | TomLondon
                      0
                    • Wallander

                      Should WordPress themes be hard coded for better SEO?

                      In the interests of making my site faster I have recently come across the suggestion of removing unwanted PHP from my WooThemes WordPress theme. The suggestion is to hard code the choices I have made in the WordPress template to reduce on database calls. Has anyone actually done this to their WordPress theme before and seen any measurable results?

                      Technical SEO | Apr 25, 2012, 11:04 AM | Wallander
                      1

                    Get started with Moz Pro!

                    Unlock the power of advanced SEO tools and data-driven insights.

                    Start my free trial
                    Products
                    • Moz Pro
                    • Moz Local
                    • Moz API
                    • Moz Data
                    • STAT
                    • Product Updates
                    Moz Solutions
                    • SMB Solutions
                    • Agency Solutions
                    • Enterprise Solutions
                    • Digital Marketers
                    Free SEO Tools
                    • Domain Authority Checker
                    • Link Explorer
                    • Keyword Explorer
                    • Competitive Research
                    • Brand Authority Checker
                    • Local Citation Checker
                    • MozBar Extension
                    • MozCast
                    Resources
                    • Blog
                    • SEO Learning Center
                    • Help Hub
                    • Beginner's Guide to SEO
                    • How-to Guides
                    • Moz Academy
                    • API Docs
                    About Moz
                    • About
                    • Team
                    • Careers
                    • Contact
                    Why Moz
                    • Case Studies
                    • Testimonials
                    Get Involved
                    • Become an Affiliate
                    • MozCon
                    • Webinars
                    • Practical Marketer Series
                    • MozPod
                    Connect with us

                    Contact the Help team

                    Join our newsletter
                    Moz logo
                    © 2021 - 2025 SEOMoz, Inc., a Ziff Davis company. All rights reserved. Moz is a registered trademark of SEOMoz, Inc.
                    • Accessibility
                    • Terms of Use
                    • Privacy

                    Looks like your connection to Moz was lost, please wait while we try to reconnect.