.htaccess без масок на одной странице

0

Я работал с различными учебниками и руководствами.htaccess для преобразования моих динамических URL-адресов в плоские SEO-дружественные.

Все работает нормально, кроме одной ссылки, которая, похоже, возвращается к динамическому URL. Я попытался отключить несколько правил, но я не могу решить эту проблему.

Пример перенаправления

http://iforwms.com/page/home => http://iforwms.com/index.php?page=home (без проблем)

http://iforwms.com/page/blog => http://iforwms.com/index.php/blog?page=blog (??)

Вот мой весь файл.htaccess. Надеюсь, кто-то может пролить свет на это...

# Set Timezone
SetEnv TZ Asia/Shanghai
Options +FollowSymLinks 

# Enable Rewriting
RewriteEngine on 

# Redirect non-www urls to www
RewriteCond %{HTTP_HOST} ^www\.iforwms\.com$ [NC]
RewriteRule ^(.*)$ http://iforwms.com/$1 [R=301,NC,L]

# Rewrite user URLs
RewriteRule ^page/(\w+)$ index.php?page=$1 [L]

# Retrieve tagged blog posts
RewriteRule ^page/blog/(\w+)$ index.php?page=blog&tag=$1 [L]

# Retrieve single blog post
RewriteRule ^page/article/(.*)/(.*)$ index.php?page=blog&article=$2 [L]

Заранее спасибо,

-ifor

  • 0
    У вас также есть .htaccess внутри /blog/ ?
Теги:
.htaccess
mod-rewrite

1 ответ

0
Лучший ответ

Я удалил "страницы" для ссылки rewrite, и это как-то устранило проблему. Здесь мой обновленный.htaccess для всех, у кого случается такая же проблема.

# Set Timezone
SetEnv TZ Asia/Shanghai
Options +FollowSymLinks 

# Enable Rewriting
RewriteEngine on 

# Redirect non-www urls to www
RewriteCond %{HTTP_HOST} ^www\.iforwms\.com$ [NC]
RewriteRule ^(.*)$ http://iforwms.com/$1 [R=301,NC,L]

# Rewrite user URLs
RewriteRule ^(\w+)$ index.php?page=$1 [L]

# Retrieve tagged blog posts
RewriteRule ^blog/(\w+)$ index.php?page=blog&tag=$1 [L]

# Retrieve single blog post
RewriteRule ^article/(.*)/(.*)$ index.php?page=blog&article=$2 [L]

Ещё вопросы

Сообщество Overcoder
Наверх
Меню