I’m using v2.2.2 - Build: date 20110801
I’m getting a strange redirect/404 issue on one particular page: http://www.bidontravel.com/blog/author/3/—You’ll see when you go to this URL that it removes the “author/3” to result in http://www.bidontravel.com/blog//. If the trailing slash is not added (http://www.bidontravel.com/blog/author/3), it’s truncating to result in http://www.bidontravel.com/blog
It should behave the same as all other author pages such as: http://www.bidontravel.com/blog/author/2/
I’m 100% sure this was not happening before, but I don’t know what caused it.
I recently made one change to .htaccess to force trailing slashes, the code can be seen below. However, I have un-done this and reverted to the old .htaccess without this new addition and it still behaves the same.
I have triple checked the URL “/author/3” under the page publish settings. It is identical to all my other author pages except for the number 3.
Why would this happen with only /author/3 and not 2, 5, or 6, I have no idea? Please help!
Here’s the .htaccess as it is currently:
<IfModule mod_rewrite.c>
# Enable Rewrite Engine
# ------------------------------
RewriteEngine On
RewriteBase /
# Add Trailing Slashes to URLs
# ------------------------------
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+[^/])$ /blog/$1/ [R=301,L]
# Redirect index.php Requests
# ------------------------------
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteCond %{THE_REQUEST} !/system/.*
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,L]
# Standard ExpressionEngine Rewrite
# ------------------------------
RewriteCond $1 !\.(css|js|gif|jpe?g|png) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /blog/index.php/$1 [L]
</IfModule>