mod_rewrite не возвращает $ _GET-значение? - PullRequest
1 голос
/ 29 августа 2009

У меня проблема с переписыванием модов, если быть более точным, он не перенаправляет меня должным образом. На моем локальном сервере все работает нормально, проблема возникает только тогда, когда сайт начинает работать ... Вот что у меня в .htaccess:

Options +FollowSymLinks
RewriteEngine on
RewriteBase /

RewriteRule ^(tutorial|news|out|profile|script)/([0-9]+)/?$ $1.php?id=$2 [L]
RewriteRule ^(tutorial|news)/([0-9]+)/post-comment/?$ $1.php?id=$2&action=postcmt [L]

RewriteRule ^atelier/([0-9]+)/?$ img/gallery/view.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9]+)/page/([0-9]+)/?$ $1.php?page=$2 [L]
RewriteRule ^get/([a-zA-Z0-9]+)/([0-9]+)/?$ $1/get.php?id=$2 [L]
RewriteRule ^get/brushes/(abr|img)/([0-9]+)/?$ brushes/$1.php?id=$2 [L]

RewriteRule ^([a-zA-Z0-9]+)/(c|series|type)/([0-9]+)/page/([0-9]+)/?$ $1.php?$2=$3&page=$4 [L]
RewriteRule ^([a-zA-Z0-9]+)/(c|series|type)/([0-9]+)/?$ $1.php?$2=$3 [L]

RewriteRule ^design/preview/([0-9]+)/?$ design/preview.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9]+)/send/?$ $1.php?action=send [L]
RewriteRule ^askme/post-question/?$ ask.php?action=ask [L]

Если я, например, введу news / 5 /, он перенаправит меня только на news.php, design / preview / 5 приведет меня только к design / preview.php и так далее. Наоборот, get / brushes / abr / 1 работает нормально ... Понятия не имею, что я делаю не так, есть предложения?

Ответы [ 2 ]

2 голосов
/ 30 августа 2009

MultiViews может вызвать такое поведение. Попробуйте отключить его:

Options -MultiViews
0 голосов
/ 30 августа 2009

Просто, чтобы начать с самого простого места и добавить сложность после, это работает для вас?

RewriteRule ^news/([^/\.]+)/?$ news.php?id=$1 [L,NC]
...