Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблема с $_SERVER['REQUEST_URI']

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Двойной слэш в начале
altermann
Отправлено: 29 Мая, 2012 - 22:56:17
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




$_SERVER['REQUEST_URI'] возвращает uri в виде "//index.php" вместо "/index.php". Подскажите почему такое может быть и куда копать чтоб исправить: nginx, apache, php?


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
OrmaJever
Отправлено: 29 Мая, 2012 - 23:18:03
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




что браузер отправил то в масив и попало, а в браузер попало то что ввёл пользователь. Заставьте пользователей вводить адрес с одним слешем.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
altermann
Отправлено: 29 Мая, 2012 - 23:27:26
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




Урл в браузере правильный, лишних слэшей нет.


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
etoYA
Отправлено: 29 Мая, 2012 - 23:29:20
Post Id



Участник


Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011  
Откуда: Крым


Помог: 21 раз(а)




altermann,
 
 Top
LIME
Отправлено: 29 Мая, 2012 - 23:30:20
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




мод рерайт наверное чудит
htaccess гляньте
 
 Top
altermann
Отправлено: 29 Мая, 2012 - 23:37:25
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)





не катит, потому что один код работает на нескольких серверах, и только на одном из них такой баг


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
etoYA
Отправлено: 30 Мая, 2012 - 00:29:39
Post Id



Участник


Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011  
Откуда: Крым


Помог: 21 раз(а)






(Добавление)
altermann, даже если вы добавите эту строчку, то хуже не будет. Просто уберет лишние слешы.
 
 Top
altermann
Отправлено: 30 Мая, 2012 - 00:43:24
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




Вот именно будет хуже. Это удалит единственный слэш между доменом и ури на других серверах


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
LIME
Отправлено: 30 Мая, 2012 - 00:47:04
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




не знаю почему надо думать как убрать и не думать откуда взялось
имхо мод рерайт кривой
смотрел в эту сторону?
 
 Top
altermann
Отправлено: 30 Мая, 2012 - 00:53:58
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




Поддерживаю LIME, интересует откуда он появился, а варианты как в коде обойти я и сам придумаю. Но меня такой расклад интересует в последнюю очередь, слишком много менять в коде.
Конфиги nginx смотрел, там ничего нет. К конфигам apache смогу только завтра.


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
sKaa
Отправлено: 30 Мая, 2012 - 00:59:58
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


Помог: 25 раз(а)

[+]


str_replace('//', '/', $_SERVER['REQUEST_URI']);
 
 Top
LIME
Отправлено: 30 Мая, 2012 - 01:16:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




sKaa тоесть не интересно откуда в ури взялся дабл слеш где его не может быть?
прально ....берите костыли и хромайте стометровку))
а потом еще много раз стр реплэйс всего контента по каждому поводу....подходец супер
 
 Top
Мелкий Супермодератор
Отправлено: 30 Мая, 2012 - 09:20:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)





etoYA, sKaa, LIME - есть такая очень небесполезная штука, ЛС называется. Вычищено. Устное предупреждение за регулярный флуд.


-----
PostgreSQL DBA
 
 Top
Viper
Отправлено: 30 Мая, 2012 - 09:39:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)






-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
altermann
Отправлено: 31 Мая, 2012 - 21:27:38
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




Может кому поможет
Была такая запись в конфиге nginx:
CODE (htmlphp):
скопировать код в буфер обмена
  1. location / {
  2.     if ($host ~* "(.*?)$") {
  3.         set $nhost $1;
  4.     }
  5.     if ($request_uri ~* "^/img/buttons/" ) {
  6.         rewrite ^/img/pic(\d+).gif$ http://$nhost/index.php?action=$1 break;
  7.     }
  8. }


Вынесли
CODE (htmlphp):
скопировать код в буфер обмена
  1. if ($host ~* "(.*?)$") {
  2.     set $nhost $1;
  3. }
  4. if ($request_uri ~* "^/img/buttons/" ) {
  5.     rewrite ^/img/pic(\d+).gif$ http://$nhost/index.php?action=$1 break;
  6. }

из location и все стало хорошо.


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Apache и другие веб-серверы »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB