WebHostingTalk.ru  

Вернуться   WebHostingTalk.ru > Главные форумы > Технические аспекты и вопросы безопасности

Ответ
 
Опции темы
  #1  
Старый 15.06.2008, 09:45
Sasagi Sasagi вне форума
Студент
 
Регистрация: 02.10.2007
Сообщений: 6
По умолчанию mod_rewrite

Поскольку доподдлинно известно, что на этом форуме есть много умных людей, я была бы весьма благодарна, если бы мне помогли найти ответ на вопрос. :)

Ситуация следующая. Для создания красивых адресов используется mod_rewrite. Однако в некоторых случаях получается, что имя запрашиваемого файла совпадает с именем существующей директории.
Например:

Предположим, запрашивается адрес: domain.com/file
При помощи mod_rewrite по этому адресу выдается нужная страница из БД или еще каким образом, несущественно.
Однако при этом на сервере существует физически директория с именем file.

У моего нынешнего хостера в этом случае к вводимому адресу автоматически добавляется закрывающий слэш (если одноименной директории нет, то слэш не добавляется). Т.е. мы запрашиваем domain.com/file - но после того, как получен ответ от сервера и пошла загрузка страницы, к адресу добавляется закрывающий слэш - domain.com/file/ Страница при этом отображается правильная, ошибок не происходит, все в порядке. Я раньше думала, что так и должно быть. :) Однако сейчас собралась к другому хостеру (кстати, так пока твердо и не решила :)), оплатила аккаунт "на пробу", начала копировать сайт и обнаружила, что та же самая структура с тем же самым htaccess (ничего абсолютно не менялось, 100% копия, все одинаковое, только хостинги разные) отображается немного иначе. А именно: закрывающий слэш не добавляется! Выглядит гораздо опрятнее, по-моему, и мне такой вариант без закрывающего слэша очень нравится. :)

Вопрос: от чего зависит такое поведение mod_rewrite'а, от каких конкретно настроек сервера? Дело в том, что переезд все-таки пока не является делом решенным, у меня есть еще на раздумья примерно месяц, и если я все-таки приму решение остаться у нынешнего хостера, мне бы хотелось попросить их, чтобы они настроили мне все это дело так, как красивее - раз уж я теперь знаю, что это возможно. ;) Хотелось бы знать, о чем нужно просить.

Заранее благодарю за подсказку. :)
Ответить с цитированием
  #2  
Старый 15.06.2008, 10:00
Admin Admin вне форума
Администратор форума
 
Регистрация: 06.03.2007
Сообщений: 2,561
По умолчанию

в директорию можно поместить .htaccess с правилом:
rewrite engine off
Ответить с цитированием
  #3  
Старый 15.06.2008, 10:12
Sasagi Sasagi вне форума
Студент
 
Регистрация: 02.10.2007
Сообщений: 6
По умолчанию

Так не получается, выдает 500 Internal Server Error.

К тому же, на новом месте я ни к каким ухищрениям не прибегала - оно там, видимо, изначально как-то иначе сконфигурировано. Мне просто интересно знать, какая именно настройка за это отвечает.
Ответить с цитированием
  #4  
Старый 15.06.2008, 10:15
Admin Admin вне форума
Администратор форума
 
Регистрация: 06.03.2007
Сообщений: 2,561
По умолчанию

Цитата:
Сообщение от Sasagi
Так не получается, выдает 500 Internal Server Error.

К тому же, на новом месте я ни к каким ухищрениям не прибегала - оно там, видимо, изначально как-то иначе сконфигурировано. Мне просто интересно знать, какая именно настройка за это отвечает.
если выходит 500 смотрите error log, там всё описано. Возможно, криво настроен mod rewrite на сервере.
Ответить с цитированием
  #5  
Старый 15.06.2008, 10:21
Sasagi Sasagi вне форума
Студент
 
Регистрация: 02.10.2007
Сообщений: 6
По умолчанию

С 500 разобралась - это я в .htaccess опечаталась.
Правда, после исправления опечатки ошибка изменилась на 403. Т.е. будто я просто запрашиваю директорию, в которой нет индексного файла (у меня в корневом .htaccess закрыта возможность смотреть директории без индекса).

Так что все равно не работает.
Ответить с цитированием
  #6  
Старый 18.06.2008, 14:31
Sasagi Sasagi вне форума
Студент
 
Регистрация: 02.10.2007
Сообщений: 6
По умолчанию

Хех. Ну неужели никто из спецов не может подсказать, в чем же тут может быть дело? Или на этом форуме только сотрудники отделов продаж бывают?
Ответить с цитированием
Ответ


Ваши права в разделе
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +3, время: 16:36.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot