Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Инструкции для mod_rewrite, требуеться помощь 
V
    Опции темы
AlexW
Дата 8.5.2006, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Доброго времяни суток всем заглянувшим в этот топ)

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

Нужно чтобы запросах
domain.ru/
domain.ru
domain.ru/index.php
domain.ru/index.php?page=ЦИФРЫ
запускалось всё как обычно

А при всех остальных запросах открывался фаил link.php, но создавалось впечатление, что находишся на той странице которую набирал в броузере

Заранее СПАСИБО smile  

Это сообщение отредактировал(а) AlexW - 8.5.2006, 16:15
PM MAIL   Вверх
Mal Hack
Дата 8.5.2006, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



AlexW, и в чем проблема?
Начинай писать, а мы поможем. Иначе ничему не научишься...
Дам подсказку, надо сначала перенаправить сами на себя запросы, которые ты озвучил выше (холостое преобразование), а затем все остальное перекинуть на links.php.


http://forum.vingrad.ru/index.php?act=modu...amp;section=803 
PM ICQ   Вверх
AlexW
Дата 8.5.2006, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Mal Hack, спасибо за ссылку

Придеться ночку посидеть над текстами, а то я полный ноль в мод_реврайт   
PM MAIL   Вверх
AlexW
Дата 8.5.2006, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Mal Hack, посмотрите пожалуйста

Код

AddType application/x-httpd-php .htm .html .asp
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{REQUEST_URI} ^index.php [OR]
RewriteCond %{REQUEST_URI} ^/index.php [OR]
RewriteCond %{REQUEST_URI} ^/ [OR]
RewriteCond %{REQUEST_URI} ^ 
RewriteRule ^index.php$ index.php [L]

RewriteCond %{REQUEST_URI} ^index.php/?page=([1-9]{1,5}) [OR]
RewriteCond %{REQUEST_URI} ^/?page=([1-9]{1,5}) [OR]
RewriteCond %{REQUEST_URI} ^?page=([1-9]{1,5})
RewriteRule ^index.php/?page=([1-9]{1,5})$ index.php/?page=([1-9]{1,5}) [L]

RewriteRule ^.*$ links.php [L]

При запросе http://site.ru/
выдает:
Код

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request. 
Apache/1.3.34 Server at site.ru Port 80



Еще пару вопросов:
1) запросы site.ru и site.ru/ будут содержать "" и "/" в {REQUEST_URI}?
2) ненашел что такое [L]     

Это сообщение отредактировал(а) AlexW - 8.5.2006, 18:20
PM MAIL   Вверх
Mal Hack
Дата 8.5.2006, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



AlexW, совершенно не в ту сторону копаешь. Алгоритм отчасти  правильный, а реализация совсем не та.

Цитата(AlexW @  8.5.2006,  18:09 Найти цитируемый пост)
2) ненашел что такое [L]     

Там есть в аттаче класная дока, там все написано.

Цитата(AlexW @  8.5.2006,  18:09 Найти цитируемый пост)
1) запросы site.ru и site.ru/ будут содержать "" и "/" в {REQUEST_URI}?

Что такое REQUEST_URI внимательно подумай. 
PM ICQ   Вверх
AlexW
Дата 9.5.2006, 02:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Цитата(Mal Hack @  8.5.2006,  23:40 Найти цитируемый пост)
AlexW, совершенно не в ту сторону копаешь. Алгоритм отчасти  правильный, а реализация совсем не та.

Пожалуйста хоть намекните, куда капать... И какая должна быть реализация? 
Вроде все по схеме:
RewriteCond СравнСтрока Условие
RewriteRule Шаблон Подстановка 
- в каком из этих компонентов у меня ошибка?

Цитата(Mal Hack @  8.5.2006,  23:40 Найти цитируемый пост)
Что такое REQUEST_URI внимательно подумай.

Если вывести $GLOBALS, то  REQUEST_URI => "/path/path/script.php"   

Это сообщение отредактировал(а) AlexW - 9.5.2006, 03:45
PM MAIL   Вверх
Mal Hack
Дата 9.5.2006, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Цитата(AlexW @  9.5.2006,  02:59 Найти цитируемый пост)
"/path/path/script.php"  

Так. Ты два раза делаешь одно и тоже. Ты сначала в rewriteCond проверяешь URI, а затем в самом RewriteRule...

Вот так обрубаем первые два запроса.
RewriteRule ^/*$ index.php [L]

Дальше пытайся... 
PM ICQ   Вверх
AlexW
Дата 10.5.2006, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Спасибо smile, что-то немного проясняеться, но всё равно связь между RewriteRule и RewriteCond остаеться для меня еще загадкой...

вот что получилось на данный момент:
Код

AddType application/x-httpd-php .htm .html .asp
RewriteEngine on
Options +FollowSymlinks
RewriteBase /

RewriteRule ^/*$ index.php [L]
RewriteRule    ^(.*)c/(.*)$    $1index.php?c=$2 [L] #псевдостатику добавил

RewriteCond    %{REQUEST_URI}    !index.php
RewriteRule    ^.*$    links.php [L]


неполучаеться только одно - чтобы при наборе  site.ru/index.php?bla=4545 b site.ru/index.php?bla=blabla&ghg=hj открывалось содержимое links.php

еще добавлю: почемуто перестал css грузиться и картинки
http://site.ru/default/style.css
http://site.ru/images/kubrickbgcolor.jpg

    

Это сообщение отредактировал(а) AlexW - 10.5.2006, 16:10
PM MAIL   Вверх
AlexW
Дата 12.5.2006, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



кто-нибудь подскажите пожалуйста можно как нибудь вести статистику поситителей через модреврайт? 
PM MAIL   Вверх
Mal Hack
Дата 12.5.2006, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Никак. 
PM ICQ   Вверх
AlexW
Дата 12.5.2006, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



можно я здесь задам вопрос? дабы не плодить топиков smile


В данный момент я вот так запрещаю загрузку файла adv.js если запрос не с моего сайта 

Код

RewriteCond    %{REQUEST_URI}    ^/adv.js
RewriteCond    %{HTTP_REFERER}    ^http://site.ru
RewriteRule    ^.*$    adv.js [L]


А можно как нибудь сделать чтобы если запрос был не с моего сайта, то показывает при наборе в броузере http://site.ru/adv.js содержание другого файла(к примеру fantom.js)? 
PM MAIL   Вверх
Mal Hack
Дата 12.5.2006, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Цитата(AlexW @  12.5.2006,  18:02 Найти цитируемый пост)
RewriteRule    ^.*$    adv.js [L]

Вот тут и наипиши нужный файл.
А вообще мне второй RewriteCond не нравится... 
PM ICQ   Вверх
AlexW
Дата 13.5.2006, 05:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



Цитата(Mal Hack @  12.5.2006,  23:37 Найти цитируемый пост)
Вот тут и наипиши нужный файл.


если я там напишу другой фаил, то adv.js при загрузке моей страницы не будет же грузиться? 
а мне надо, чтобы когда запрос к adv.js с моей страницы, то грузиться adv.js.
а когда не с моей, то под видом adv.js грузиться инфа из левого файла


Цитата(Mal Hack @  12.5.2006,  23:37 Найти цитируемый пост)
А вообще мне второй RewriteCond не нравится...  


Почему? 
Я этим выражением делаю загрузку только когда запрос идет с моего сайта, а не из вне. Или это не правильно?

Пока вот что на ум приходит:
Код

RewriteCond    %{REQUEST_URI}    ^/adv.js
RewriteCond    %{HTTP_REFERER}    !http://site.ru
RewriteRule    ^.*$    fantom.js [L]

правельно ли так делать?


пс: Mal Hack, а в целом я правельно состовляю инструкции? Буду очень благодарен если укажите на основные ошибки. 
PM MAIL   Вверх
Mal Hack
Дата 13.5.2006, 07:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



AlexW, возьми инструкцию из FAQ, продумай алгоритм и напиши. Вот честно, надоело уже постоянно отвечать на посты, когда колд написан от балды с первого раза, и люди спрашивают где ошибка... 
PM ICQ   Вверх
AlexW
Дата 13.5.2006, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 22.1.2006

Репутация: нет
Всего: 1



ок, ясно

спасибо Mal Hack :)

пс: фак и оффдоку прочитал несколько раз, но они очень скудны на примеры....
хорошо, что гугль в этом вопросе может просветить :0) 31 400 страниц на русском для RewriteCond OR RewriteRule

  

Это сообщение отредактировал(а) AlexW - 13.5.2006, 10:14
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0566 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.