Welcome! Log In Create A New Profile

Advanced

Re: Помогите пожалуйста написать реврайт!

June 13, 2010 05:38AM
On Sun, Jun 13, 2010 at 12:30:52AM -0400, Craken wrote:

> Здравствуйте товарищи!
> Проблема вот в чем!
> Ставлю у себя на ресурсе "фильтр" ссылок! Ресурс на пхп! В качестве "фильтрирования" использую preg_replace(); !
> И вот тут возникла проблема! После "переобразования" ссылка получает вид: http://mysite.com/link.php?l=http://site.com
> то есть как Вы поняли, mysite.com - это мой сайт, а вот site.com - это сайт на который идет ссылка!
> В файле link.php происходит куча проверок и (например) если это ссылка на картинку, тэг не может отобразить такую ссылку! Пришлось писать реврайт чтобы ссылка была такого плана http://mysite.com/linkhttp://site.com, прошу обратить внимание на вставку "link", она нужна :)
> И так... что получилось (сильно прошу не бить):
> [code]
> rewrite ^/link(.*)([0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM,./]*)$ /link.php?l=$1 last;
> [/code]
> Вроде как все должно работать.... но все стало как-то не так отображаться, и я через link.php вывел ссылку, и ссылка у меня получилась такого плана:
> http://mysite.com/link.php?l=http:/site.com
> (для того кто не заметил: в адресе один слеш!)
> Всем заранее Спасибо!
> С Уважением, Алексей!

Здравствуй товарищ Алексей!
Проблема вот в чем!
nginx объединяет несколько подряд идущих слэшей в один!
http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#merge_slashes
Кстати! Вот это:
([0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM,./]*)
Можно заменить на вот это:
([\w,./]*)


--
Игорь Сысоев
http://sysoev.ru

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Помогите пожалуйста написать реврайт!

Craken June 13, 2010 12:30AM

Re: Помогите пожалуйста написать реврайт!

Igor Sysoev June 13, 2010 05:38AM

Re: Помогите пожалуйста написать реврайт!

Craken June 13, 2010 06:35AM

Re: Помогите пожалуйста написать реврайт!

Igor Sysoev June 13, 2010 06:40AM

Re: Помогите пожалуйста написать реврайт!

Craken June 13, 2010 06:59AM

Re: Помогите пожалуйста написать реврайт!

Boris Dolgov June 13, 2010 07:02AM

Re: Помогите пожалуйста написать реврайт!

Craken June 13, 2010 07:06AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 107
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready