По логике, чтоб так делать надо иметь базу ссылок которые есть, и сравнивать S_SERVER['REQUEST_URI'] с ними, и если не совпала то выводить 404.Но получается пока будет грузиться страничка скрипт будет проверять все Хк ссылок, наверное долго будет..
Хотел спросить есть ли более рациональный подход?
Спустя 2 минуты, 29 секунд (13.11.2010 - 18:05) DmitryOpalev написал(а):
Да, надо в .htaccess (или как-то так) прописывать, и делать 404.html...
Спустя 5 минут, 17 секунд (13.11.2010 - 18:11) Гость_Дмитрий написал(а):
Цитата (DmitryOpalev @ 13.11.2010 - 15:05) |
Да, надо в .htaccess (или как-то так) прописывать, и делать 404.html... |
Про .htaccess сразу подумал, но там можно всего лишь задать регепс, а этот вариант немного не подходит.Или я ошибаюсь?
Спустя 4 минуты, 11 секунд (13.11.2010 - 18:15) Invis1ble написал(а):
Гость_Дмитрий
почему не подходит? регулярку грамотно составить надо просто, имхо..
почему не подходит? регулярку грамотно составить надо просто, имхо..
Спустя 2 минуты, 11 секунд (13.11.2010 - 18:17) DmitryOpalev написал(а):
Я не догоняю... что вы пытаетесь составить? Регулярку в .htaccess?
Спустя 9 минут, 14 секунд (13.11.2010 - 18:26) Гость_Дмитрий написал(а):
Я пытаюсь определиться что лучше: составлять могучую регулярку в .htaccess или делать "в лоб" т.е. перебором
Спустя 2 минуты, 20 секунд (13.11.2010 - 18:29) DmitryOpalev написал(а):
Все равно не догоняю... это же уже продумано... если страницы нет, выводится 404.html...
Спустя 9 минут, 27 секунд (13.11.2010 - 18:38) Гость_Дмитрий написал(а):
вот берем родимый джумловский движек и любую ссылку:
http://site.my/index.php?option=com_conten...id=16&Itemid=31
и теперь заменяем любое число на несуществующее в базе данных, например:
http://site.my/index.php?option=com_conten...id=16&Itemid=31
в итоге получаем туже самую страничку но при другом урл, поисковик данный факт фиксирует как дубль и понижает в выдаче
http://site.my/index.php?option=com_conten...id=16&Itemid=31
и теперь заменяем любое число на несуществующее в базе данных, например:
http://site.my/index.php?option=com_conten...id=16&Itemid=31
в итоге получаем туже самую страничку но при другом урл, поисковик данный факт фиксирует как дубль и понижает в выдаче
Спустя 1 минута, 38 секунд (13.11.2010 - 18:40) Гость_Дмитрий написал(а):
немного неудачно вышло, но если навести курсор то видно разницу в ссылках
Спустя 4 часа, 3 минуты, 15 секунд (13.11.2010 - 22:43) RCuPeR написал(а):
В .htaccess пропиши:
ErrorDocument 404 /404.html
ErrorDocument 404 /404.html
Спустя 2 минуты, 7 секунд (13.11.2010 - 22:45) DmitryOpalev написал(а):
Цитата |
В .htaccess пропиши: ErrorDocument 404 /404.html |
Вот это я и пытался донести
Спустя 1 минута, 41 секунда (13.11.2010 - 22:47) RCuPeR написал(а):
Цитата |
> Как самому обрабатывать ошибки Апача? Наиболее интересные и полезные ошибки Апача это: 403-404, 500. 403 - пользователь не прошел аутентификацию, запрет на доступ (Forbided). 404 - запрашиваемый документ (файл, директория) не найден. 500 - внутренняя ошибка сервера (к примеру, ошибка в синтаксисе файла .htaccess). Для того, что бы пользователю при этих ошибках были показаны ваши собственные сообщения об ошибках, в .htaccess пишем: ErrorDocument 403 /errors/403.html ErrorDocument 404 /errors/404.html ErrorDocument 500 /errors/500.html При этом при возникновении 404 ошибки пользователю загрузится файл errors/403.html. Удобно делать собственный обработчик на некоторые ошибки. В .htaccess пишем: ErrorDocument 403 /errors/error.php?403 ErrorDocument 404 /errors/error.php?404 ErrorDocument 500 /errors/error.php?500 В error.php через $HTTP_SERVER_VARS['REQUEST_URI'] определяем какой документ вызвал ошибку и дальше обрабатываем. Если в .htaccess на ErrorDocument стоит указание файла с полным путем (http://site.ru/error.php), то $HTTP_SERVER_VARS['REQUEST_URI'] будет содержать этот файл, а не вызвавший ошибку. В Internet Explorer 5.0 неправильно обрабатывается файл, вызывающийся при ошибке, если его размер меньше 1 килобайта. Будет вызвана стандартная страница IE 404. |
Спустя 1 минута, 3 секунды (13.11.2010 - 22:48) RCuPeR написал(а):
Цитата (DmitryOpalev @ 13.11.2010 - 19:45) | ||
Вот это я и пытался донести |
Ну мало ли, может человек не знает как это осуществить.
Спустя 1 минута, 48 секунд (13.11.2010 - 22:50) DmitryOpalev написал(а):
![smile.gif](http://phpforum.su/html/emoticons/smile.gif)
Ну он даже не спросил...
Спустя 27 минут, 8 секунд (13.11.2010 - 23:17) RCuPeR написал(а):
Цитата (DmitryOpalev @ 13.11.2010 - 19:50) |
![]() Ну он даже не спросил... |
Твоя подпись меня оправдывает
![tongue.gif](http://phpforum.su/html/emoticons/tongue.gif)
Спустя 2 минуты, 20 секунд (13.11.2010 - 23:19) Дмитроий написал(а):
![blink.gif](http://phpforum.su/html/emoticons/blink.gif)
Цитата |
Вот это я и пытался донести |
Донести что?Вы хотя бы в вопрос постарайтесь вникнуть если доносить взялись..
Цитата |
Ну мало ли, может человек не знает как это осуществить. |
Остряк?
Цитата |
Ну он даже не спросил... |
Читать все с первого поста...
Спустя 7 минут, 14 секунд (13.11.2010 - 23:26) RCuPeR написал(а):
Цитата (Дмитроий @ 13.11.2010 - 20:19) | ||||||
![]()
Донести что?Вы хотя бы в вопрос постарайтесь вникнуть если доносить взялись..
Остряк?
Читать все с первого поста... |
А это к чему ?
Человек спросил, я помог.
"Ну мало ли, может человек не знает как это осуществить." - по своему опыту знаю, как приятно, когда кто-то предлагает больше чем просят.
И может хватит флудить? Парню это не поможет.
Спустя 5 минут, 52 секунды (13.11.2010 - 23:32) Гость_Дмитрий написал(а):
Ладно ребят, спасибо за советы...
Часто посещаю этот форум, .т.к. много отзывчивых людей и все оперативно так..
Часто посещаю этот форум, .т.к. много отзывчивых людей и все оперативно так..
![smile.gif](http://phpforum.su/html/emoticons/smile.gif)
Спустя 4 минуты, 47 секунд (13.11.2010 - 23:37) RCuPeR написал(а):
Так тебе хоть помогло что-то ?
Спустя 1 год, 6 месяцев, 24 дня, 18 часов, 10 минут, 7 секунд (8.06.2012 - 16:47) Guest написал(а):
[fliph]