Forum Webscript.Ru

Общие => Веб Сервера => Тема начата: Druggy от 25 Февраля 2005, 15:37:16

Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: Druggy от 25 Февраля 2005, 15:37:16
Стоит сервер Апач 1.3.33
использую mod_rewrite

в дирриктории с моими документами лежит файл .htaccess
вот его содержимое:

RewriteEngine on
RewriteBase /
RewriteRule ^news/$ news.php

тоесть когда запрос http://localhost/news/ - все работает и мы получаем содерджимое news.php

но если запрос http://localhost/news - то получаем сообщение о 404-й ошибке

как сделать чтобы получать один и тот же результат (содержимое news.php) при обоих запросах?

Обыскал форум но ничего не нашел.
Подскажите пожалуйста как мне быть! или дайте ссылочку на топик в форуме или на какой-нибудь тематический ресурс, где есть ответ на мой вопрос!

Заоанее благодарен!

P.S. возмлжно просто есть метод чтобы автоматически добавлялся закрывающий слеш.
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: commander от 25 Февраля 2005, 16:46:50
Druggy
RewriteRule ^news$ news.php
?
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: Druggy от 25 Февраля 2005, 17:25:58
Цитировать
commander:
RewriteRule ^news$ news.php
?


в чем вопрос?
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: commander от 25 Февраля 2005, 17:29:26
Druggy
кто мешает дописать ещё одну строку:
RewriteEngine on
RewriteBase /
RewriteRule ^news/$ news.php
RewriteRule ^news$ news.php

или что-нить вроде этого:
RewriteRule ^news(.*)$ news.php
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: Druggy от 25 Февраля 2005, 17:32:25
Цитировать
commander:
RewriteRule ^news(.*)$ news.php


твое решение будет работать даже если запрос будет http://localhost/newsidalhenepoymiskolkovs9koydr9ni - а это помоему плохо... мягко говоря...

вобщем хотелось бы получить эффект как в ЖЖ там набираент http://www.livejournal.com/users/name
а получается всеравно http://www.livejournal.com/users/name/
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: commander от 25 Февраля 2005, 17:39:11
Druggy
Цитировать
твое решение будет работать даже если запрос будет http://localhost/newsidalhenepoymiskolkovs9koydr9ni - а это помоему плохо... мягко говоря...

курим теорию регекспов!
Цитировать
или что-нить вроде этого:
RewriteRule ^news(.*)$ news.php

тут я тебя лишь направил в нужную сторону...
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: Druggy от 25 Февраля 2005, 17:46:21
Просто мне кто-то сказал что можно сделать чтобы закрывающий слеш сам добовлялся...

вот казалось бы уж тут то все должно работать:
http://www.egoroff.spb.ru/portfolio/apache/mod_rewrite.html
http://www.egoroff.spb.ru/

но даже там имеется поразительная разница между
http://www.egoroff.spb.ru/portfolio
и
http://www.egoroff.spb.ru/portfolio/   =)

у лебедева
http://www.artlebedev.ru/news
и
http://www.artlebedev.ru/news/
дают абсолютно правильный результат...

а теорию регекспов курить... это блин не самое благодарное занятие... просто возможно кто-то сталкивался с этой проблеммой и может поделится ее решением.
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: commander от 25 Февраля 2005, 17:57:33
Druggy
нежелание читать теорию... приводит к подобным вопросам...

RewriteRule ^news/{0,1}$ news.php
Название: mod_rewrite или я ничего уже не понимаю =)
Отправлено: Druggy от 25 Февраля 2005, 18:01:46
Цитировать
commander:
RewriteRule ^news/{0,1}$ news.php


Спасибо.

<лишний текст сообщения удалил =)>