Что то странное с .htaccess

[Удален]
436

Вот кусочек моего htaccess'а. На локалке прекрасно работает, а вот после переноса на хостинг страницы domen/rent_flat/30/ не существует (ошибка 404)

AddHandler application/x-httpd-php5 php

AddDefaultCharset utf-8
Options +FollowSymLinks
RewriteEngine on
RewriteBase /

RewriteRule ^register[/]{0,1}$ register.php [L]

RewriteRule ^rent_flat/(\d+)[/]{0,1}$ rent_flat.php?id_rent_flat=$1 [L]
RewriteRule ^sale_flat/(\d+)[/]{0,1}$ sale_flat.php?id_sale_flat=$1 [L]

написал


RewriteRule ^rent_flat/([^/]+)[/]{0,1}$ rent_flat.php?id_rent_flat=$1 [L]

те же... только профиль.

Но регистрация нормально работает. Странно очень. Сам .htaccess файл 73 строки содержит.

Хостеру писать? Они что-то намудрили или я недостаточно образованный? :)

[Удален]
#1

Выложите полное содержимое .htaccess здесь

[Удален]
#2

ну во первых вот такое {0,1} проще записывается одним знаком - "?", да и скобочки у слеша не нужны, это не символьный класс.

а во вторых у вас везде понатыканы флаги L, может быть такое, что урл /rent_flat/30/ попадает еще под какое нибудь правило которое его на 404 его перенаправляет

А еще может у хостера стоит nginx )

[Удален]
#3
RewriteRule ^rent_flat/([0-9]*)/$ rent_flat.php?id_rent_flat=$1 [L]
RewriteRule ^sale_flat/([0-9]*)/$ sale_flat.php?id_sale_flat=$1 [L]

вот так нужно So1

ну или

RewriteRule ^rent_flat/([0-9]*)$ rent_flat.php?id_rent_flat=$1 [L]
RewriteRule ^sale_flat/([0-9]*)$ sale_flat.php?id_sale_flat=$1 [L]

если слэши не нужны )

[Удален]
#4

Так у ТС фишка как раз в том что и со слешем и без слеша должно работать

а звездочка у вас - плохо. /rent_flat// обработается и фиг знает что откроется

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий