Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Головоломкий мод реврайт. / 19 сообщений из 19, страница 1 из 1
06.02.2006, 07:01
    #33524744
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Добрый день.
Помогите пожалуйста разобраться с "головоломким" мод реврайт. На форуме нашел вот такой пример:

Код: plaintext
1.
2.
3.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$ 1  [L,QSA]

И уже сломал голову. Подскажите пожалуйста, как он функционирует, для чего нужны регулярные выражения?





Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
06.02.2006, 07:23
    #33524758
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
> как он функционирует
http://www.yandex.ru/yandsearch?text=%CC%EE%E4%F3%EB%FC+Apache+mod_rewrite

> для чего нужны регулярные выражения
http://www.webscript.ru/stories/04/06/25/6006996


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
06.02.2006, 08:00
    #33524783
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
...
Рейтинг: 0 / 0
06.02.2006, 08:00
    #33524786
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Код: plaintext
RewriteCond %{REQUEST_FILENAME} !-f
- а что делает вот эта строчка?


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
06.02.2006, 10:34
    #33525055
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
SASH2
Код: plaintext
RewriteCond %{REQUEST_FILENAME} !-f
- а что делает вот эта строчка?Какое место в документации, где описывается то, что написано в этой строчке, тебе непонятно?
...
Рейтинг: 0 / 0
06.02.2006, 11:41
    #33525340
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Код: plaintext
{REQUEST_FILENAME}
- вот это.


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
06.02.2006, 12:49
    #33525630
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
SASH2
Код: plaintext
{REQUEST_FILENAME}
- вот это.И что именно в прочтённой вами документации непонятно об этом месте? Приведите цитаты с вопросами.
...
Рейтинг: 0 / 0
06.02.2006, 12:55
    #33525652
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
REQUEST_FILENAME - что такое название файла запроса?

img=http://www.sql.ru/forum/members/12423.bmp]
Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
06.02.2006, 22:48
    #33527191
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
SASH2REQUEST_FILENAME - что такое название файла запроса?Читайте в документации. У Егорова это есть.
...
Рейтинг: 0 / 0
07.02.2006, 07:30
    #33527382
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Нашел, спасибо.
А вот что делает эта штука - q=$1 [L,QSA]
И что такое L и QSA?


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
07.02.2006, 12:02
    #33528157
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Написано же в документации про флаги...

# 'last|L' (last rule)
Stop the rewriting process here and don't apply any more rewriting rules. This corresponds to the Perl last command or the break command from the C language. Use this flag to prevent the currently rewritten URL from being rewritten further by following rules. For example, use it to rewrite the root-path URL ('/') to a real one, e.g., '/e/www/'.

# 'qsappend|QSA' (query string append)
This flag forces the rewriting engine to append a query string part in the substitution string to the existing one instead of replacing it. Use this when you want to add more data to the query string via a rewrite rule.

Хотя надо признать, какая-то эта документация бестолковая, искать нужное легко только если точно знаешь, что ищешь...
...
Рейтинг: 0 / 0
13.02.2006, 08:51
    #33539892
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Здравствуйте!

Помогите пожалуйста еще раз.
Вот есть такой код:

Код: plaintext
1.
2.
3.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?nav=$ 1  [L,QSA]

Подскажите пожалуйста, как сделать еще и для подкаталога - http://namesait.ru/index.php?nav=shop&article=a_nd ???

Чтобы срабатывал как http://namesait.ru/shop/a_nd


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
13.02.2006, 11:18
    #33540233
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
...
Рейтинг: 0 / 0
13.02.2006, 11:42
    #33540332
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
пробовал вот так:

Код: plaintext
1.
RewriteRule ^(.*)$ index.php?nav=$ 1  [<тут не понял какую букву написать> ,QSA]
RewriteRule ^(.*)$ index.php?nav/shop&article=$ 2  [L,QSA] // тут точно L потому как последняя.
Но чего - то никак не получается. Хелп читал, но там так все "завернуто".



Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
13.02.2006, 12:52
    #33540565
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
SASH2
Код: plaintext
RewriteRule ^(.*)$ index.php?nav/shop&article=$ 2  [L,QSA] // тут точно L потому как последняя.
Откуда здесь $2?
Разберитесь вначале с регулярными выражениями - а потом уже лезьте дальше, разбираться с mod_rewrite. То, что вы пишете сейчас - вы пишете от балды, при помощи Copy&Paste, даже не разобравшись и не осознав сути написанного.
...
Рейтинг: 0 / 0
13.02.2006, 13:12
    #33540649
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Я пытаюсь разобраться в этой штуке, на основе реального примера. Если можете, то подскажите как правильно будет.
Читал я статьи про регулярные выражения, но так ничего до конца не понял. Проще разбираться на практике.


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
13.02.2006, 13:46
    #33540797
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Может кто подскажет как всетаки сделать из вот этого http://namesait.ru/shop/a_nd вот это http://namesait.ru/index.php?nav=shop&article=a_nd



Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
13.02.2006, 13:50
    #33540818
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
SASH2Читал я статьи про регулярные выражения, но так ничего до конца не понял.Читайте Фридла.Проще разбираться на практике.Ну так и практикуйтесь. В той же книге и мануале практических примеров - вагон и маленькая тележка. + в FAQ была ссылка на софтинку, которая делает разбор регулярок наглядным.
...
Рейтинг: 0 / 0
13.02.2006, 14:01
    #33540872
SASH2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Головоломкий мод реврайт.
Книга Фридла для трафика тяжела.
Мне нужно всего лишь разобраться с одним примером.


Я понямаю, что пяшу няправяльна и прязываю всех не следовать мойему прямеру
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Головоломкий мод реврайт. / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]