| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Администрирование Web серверов и Web служб > modrewrite как сделать общее правило |
| Автор: americanets 12.12.2006, 12:34 |
| что необходимо написать в .htaccess чтоб все ссылки указывали на файл pages.php , но ссылки news/ news/11/22/2006/2/ на news.php ссылки foto/group1/f1/... на foto.php ? |
| Автор: Wolf1994 12.12.2006, 13:47 | ||
|
| Автор: vasac 12.12.2006, 13:48 |
| <!-- Не успел --> |
| Автор: americanets 12.12.2006, 13:59 | ||
тут понятно
а вот можно чтоб на pages ссылки указывали любые, те stranica stranica2 chtoto/chtoto/ те примерно так, но тогда не работают другие, просто постоянно дописывать хтаццесс не хочется, не удобно RewriteRule ^(.*)$ pages.php [L,NS] |
| Автор: Wolf1994 12.12.2006, 16:22 | ||||
Вот так, для перезаписи URL вида: page/sub/1-2/
Так почему-то не работает:
|
| Автор: americanets 12.12.2006, 16:34 |
| да, но тогда у меня ссылки / news/11/22/2006/2/ тоже ссылаются на paes.php ? |
| Автор: Wolf1994 12.12.2006, 18:37 |
| Нет, если правило расположить в конце, после других правил. |
| Автор: americanets 12.12.2006, 21:04 |
| понятно, значит сверху вниз приоритет распространяется? |
| Автор: Wolf1994 12.12.2006, 22:38 |
| Да. |
| Автор: americanets 13.12.2006, 09:43 |
| ок , спасибо, а где можно почитать доку про данный мод? |
| Автор: Wolf1994 13.12.2006, 10:03 |
| Вот пара ссылок найденных в Nigma: http://apachedev.ru/2006/07/31/mod_rewrite-preobrazovanie-dinamicheskih-url-v-staticheskie http://www.opennet.ru/docs/RUS/mod_rewrite/ |
| Автор: americanets 15.12.2006, 10:40 |
| списибо |
| Автор: americanets 15.12.2006, 20:17 |
| что то не работает пишу RewriteEngine on RewriteRule ^search/$ /search.php RewriteRule ^(.*) content.php но при запросе www.site.ru/search/ пытается открыть content.php |
| Автор: Wolf1994 15.12.2006, 20:26 | ||||
| Можно попробовать заэкранировать слэш: \/ Добавлено @ 20:27
или
|
| Автор: americanets 15.12.2006, 20:33 |
| попробую , написал RewriteEngine on RewriteRule ^poisk/$ search.php [L,NS] RewriteRule ^(.*)/$ content.php [L,NS] работает, но если на конце / если RewriteEngine on RewriteRule ^poisk/$ search.php [L,NS] RewriteRule ^(.*)/$ content.php [L,NS] RewriteRule ^(.*)$ content.php [L,NS] не работает выходит только на content.php |
| Автор: psworld 16.12.2006, 20:47 |
| RewriteRule ^(.*) content.php Под (.*) попадает предыдущий запрос "/search.php" и переписывается в content.php По идее нужно грамотно продумать порядок правил или подробнее их описать. |
| Автор: Rock 16.12.2006, 21:30 | ||
проще сделать чтобы все запросы пере направлялись определенному скрипту, например index.php
а в нем уже реализовывать обработку $_SERVER['REQUEST_URI']; |
| Автор: americanets 17.12.2006, 12:40 |
| да, не просто всеЮ попробую сделать редирект, 404 ошибка на скрипт который вернет урл с которого перешли + слеш |