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 :: Задать опцию, чтобы был не важен регистр букв в URL адресе

 PHP.SU

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


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

> Без описания
Crowley
Отправлено: 02 Апреля, 2014 - 22:38:38
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Янв. 2014  


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




Понимаю, что 99% на то, что это задается не средствами php, но все-же спрошу, как(и где) задать опцию, чтобы регистр букв в адресе страницы был не важен? Например, у меня есть папка "api", путь к ней примерно такой : example.ru/api/, как бы мне задать опцию, чтобы при переходе на example.ru/API/ хостинг понимал, какую я запрашиваю страницу и выдавал нужную(а не 404, как сейчас)?
 
 Top
3d_killer
Отправлено: 02 Апреля, 2014 - 22:55:43
Post Id



Участник


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


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




делай все лучше в нижнем регистре а в пхп вначале:
PHP:
скопировать код в буфер обмена
  1.  
  2. // Приняли URL и перевели все символы в нижний регистр, при этом указав кодировку, во избежания проблем с кириллицей
  3.     $url = mb_strtolower(urldecode($_SERVER['REQUEST_URI']), 'UTF-8') ;
  4.     // Пишем условие, если в брайзерной строке отличается от урла с нижним регистром, то
  5.     if(urldecode($_SERVER['REQUEST_URI']) != $url) {
  6.         // Выполняем редирект 301
  7.         header('Location: http://'.$_SERVER['HTTP_HOST'].$url, true, 301) ;
  8.     }
  9.  

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

(Отредактировано автором: 02 Апреля, 2014 - 22:57:23)

 
My status
 Top
Crowley
Отправлено: 02 Апреля, 2014 - 23:22:50
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Янв. 2014  


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




Мне не нужна раскрутка сайта, он делается для узкого круга людей.
 
 Top
Crowley
Отправлено: 03 Апреля, 2014 - 22:01:23
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Янв. 2014  


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




Понял, это почти не реально. Можно не отвечать.

(Отредактировано автором: 03 Апреля, 2014 - 22:02:36)

 
 Top
Мелкий Супермодератор
Отправлено: 04 Апреля, 2014 - 09:36:31
Post Id



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


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


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




Crowley пишет:
Понимаю, что 99% на то, что это задается не средствами php

Если у вас фронт-контроллер - это задаётся только и исключительно средствами PHP. А именно - кодом этого самого фронт-контроллера.

Если почему-то нет фронт-контроллера - тогда печалька. Раскуривайте mod_rewrite, если под апачом.


-----
PostgreSQL DBA
 
 Top
Ch_chov
Отправлено: 04 Апреля, 2014 - 10:20:50
Post Id



Постоянный участник


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


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




Для статических файлов достаточно включить mod_spelling
CODE (text):
скопировать код в буфер обмена
  1. <IfModule mod_speling.c>
  2.   CheckSpelling On
  3.   CheckCaseOnly On
  4. </IfModule>

(Отредактировано автором: 04 Апреля, 2014 - 10:21:06)

 
 Top
LAPD
Отправлено: 26 Февраля, 2018 - 15:49:59
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Февр. 2018  


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




[quote=3d_killer][/quote]Привет.
У меня схожий вопрос.
Как сделать чтоб сайт не переводил URL в нижний регистр, оставлял как есть типа так: site.ru/GhDfdFdf.html
 
 Top
arimanecro
Отправлено: 02 Марта, 2018 - 15:48:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 209
Дата рег-ции: Май 2014  


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




LAPD

а с чего ты решил что он переводит?

http://localhost/test.php?name=VasyA

PHP:
скопировать код в буфер обмена
  1. var_dump($_SERVER["REQUEST_URI"]); // string(20) "/test.php?name=VasyA"
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB