Чтение RSS каналов

Форум

Открыть Ответить

Вопрос по 404 ошибке и маршрутизатор ссылок

0

0
1
03.11.2017 19:42:0010.11.2017 18:08:48
В логах вижу, что боты поисковиков часто заходят по несуществующим ссылкам, точнее даже сказать по неправильным ссылкам вида https://sayt.ru/index.php/blablabla/tratata/ururu/brands-iWYv34jy3x.jpg и ссылки могут быть как совсем короткими, так и капец какими длинными. Откуда они взялись - вопрос другой. Сейчас беспокоит то, что при переходе по такой явно неправильной ссылке, не отрабатывает 404 ошибка. Даже на slaed.net если попробуете подставить вот ту ссылку, которую выше привел, то увидите о чем я говорю.

Вопрос: как сделать так, чтобы при переходе по подобным ссылкам отдавалась бы 404 ошибка?


Версия системы: SLAED CMS 6.* Pro
Версия PHP: 7
3.92

3.92
2
05.11.2017 18:52:10
Отключить ЧПУ пробовали?
Это конечно не решение, но причина связана с правилами файла: .htaccess

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.20

3.20
3
10.11.2017 15:22:3010.11.2017 18:22:20
К стати, идея реализации маршрутизатора ссылок летает в воздухе уже давно. Но воплотить это не так просто, как могло бы показаться на первый взгляд, потребуется модификация все участков системы, всего кода ядра. Таким образом придётся изменить все функции, в которых генерируются внутренние ссылки системы.

Думаю что время пришло, постараюсь реализовать в следующей версии CMS.

В этом случае данный участок кода файла: .htaccess отпадёт за ненадобностью
RewriteRule ^index.html$																									index.php [N]

# All standart moduls and RSS
RewriteRule ^rss-num-([0-9]*).html$																					index.php?go=rss&num=$1 [NC]
RewriteRule ^rss-([a-zA-Z0-9_]+)-num-([0-9]*).html$															index.php?go=rss&name=$1&num=$2 [NC]
RewriteRule ^rss-([a-zA-Z0-9_]+)-id-([0-9]*).html$																index.php?go=rss&name=$1&id=$2 [NC]
RewriteRule ^rss-([a-zA-Z0-9_]+)-([0-9]*)-num-([0-9]*).html$												index.php?go=rss&name=$1&cat=$2&num=$3 [NC]
RewriteRule ^rss-([a-zA-Z0-9_]+)-([0-9]*).html$																	index.php?go=rss&name=$1&cat=$2 [NC]
RewriteRule ^rss-([a-zA-Z0-9_]+).html$																				index.php?go=rss&name=$1 [NC]
RewriteRule ^rss.html$																										index.php?go=rss [NC]
RewriteRule ^open-search.html$																							index.php?go=search [NC]
RewriteRule ^([a-zA-Z0-9_]+)-clients.html$																			index.php?name=$1&op=clients [NC]
RewriteRule ^([a-zA-Z0-9_]+)-partners.html$																		index.php?name=$1&op=partners [NC]
RewriteRule ^([a-zA-Z0-9_]+)-edithome.html$																		index.php?name=$1&op=edithome [NC]
RewriteRule ^([a-zA-Z0-9_]+)-logout-refer.html$																	index.php?name=$1&op=logout&refer=1 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-logout.html$																			index.php?name=$1&op=logout [NC]
RewriteRule ^([a-zA-Z0-9_]+)-newuser.html$																		index.php?name=$1&op=newuser [NC]
RewriteRule ^([a-zA-Z0-9_]+)-passlost.html$																		index.php?name=$1&op=passlost [NC]
RewriteRule ^([a-zA-Z0-9_]+)-privat.html$																			index.php?name=$1&op=privat [NC]
RewriteRule ^([a-zA-Z0-9_]+)-privat-(.*).html$																	index.php?name=$1&op=privat&uname=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-favorites.html$																		index.php?name=$1&op=favorites [NC]
RewriteRule ^([a-zA-Z0-9_]+)-info-(.*).html$																		index.php?name=$1&op=view&uname=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-rech-([0-9]*).html$																index.php?name=$1&op=rech&id=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-avatar-(.*).html$																	index.php?name=$1&op=saveavatar&avatar=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-view-([0-9]*)-([0-9]*)-([0-9]*).html$										index.php?name=$1&op=view&id=$2&pag=$3&num=$4 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-view-([0-9]*)-([0-9]*).html$													index.php?name=$1&op=view&id=$2&num=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-view-([0-9]*)-word-(.*).html$													index.php?name=$1&op=view&id=$2&word=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-view-([0-9]*)-last.html$															index.php?name=$1&op=view&id=$2&last [NC]
RewriteRule ^([a-zA-Z0-9_]+)-view-([0-9]*).html$																index.php?name=$1&op=view&id=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-broken-([0-9]*).html$															index.php?name=$1&op=broken&id=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-let-(.*)-([0-9]*).html$															index.php?name=$1&op=liste&let=$2&num=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-let-(.*).html$																		index.php?name=$1&op=liste&let=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-list-([0-9]*).html$																	index.php?name=$1&op=liste&num=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-list.html$																				index.php?name=$1&op=liste [NC]
RewriteRule ^([a-zA-Z0-9_]+)-kasse.html$																			index.php?name=$1&op=kasse [NC]
RewriteRule ^([a-zA-Z0-9_]+)-add-([0-9]*)-0-([0-9]*)-([0-9]*).html$									index.php?name=$1&op=add&cat=$2&id=0&pid=$3&qid=$4 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-add-([0-9]*)-([0-9]*)-([0-9]*).html$										index.php?name=$1&op=add&cat=$2&id=$3&pid=$4 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-add-([0-9]*)-0-([0-9]*).html$													index.php?name=$1&op=add&cat=$2&id=0&pid=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-add-([0-9]*).html$																index.php?name=$1&op=add&cat=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-add.html$																				index.php?name=$1&op=add [NC]
RewriteRule ^([a-zA-Z0-9_]+)-delete-([0-9]*)-([0-9]*).html$												index.php?name=$1&op=delete&cat=$2&id=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-sort-([0-9]*)-([0-9]*).html$													index.php?name=$1&sort=$2&num=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-sort-([0-9]*).html$																index.php?name=$1&sort=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-cat-([0-9]*)-word-(.*).html$													index.php?name=$1&cat=$2&word=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-cat-([0-9]*)-sort-([0-9]*)-([0-9]*).html$									index.php?name=$1&cat=$2&sort=$3&num=$4 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-cat-([0-9]*)-sort-([0-9]*).html$												index.php?name=$1&cat=$2&sort=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-cat-([0-9]*)-([0-9]*).html$													index.php?name=$1&cat=$2&num=$3 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-cat-([0-9]*).html$																	index.php?name=$1&cat=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-word-(.*).html$																		index.php?name=$1&word=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-([0-9]*).html$																		index.php?name=$1&num=$2 [NC]
# RewriteRule ^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)-atime-(.*)-dtime-(.*)-word-(.*)-([0-9]*).html$	index.php?name=$1&mod=$2&atime=$3&dtime=$4&word=$5&num=$6 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)-word-(.*)-([0-9]*)-([0-9]*).html$					index.php?name=$1&mod=$2&word=$3&typ=$4&num=$5 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)-word-(.*)-([0-9]*).html$									index.php?name=$1&mod=$2&word=$3&num=$4 [NC]
RewriteRule ^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+).html$															index.php?name=$1&mod=$2 [NC]
RewriteRule ^([a-zA-Z0-9_]+).html																						index.php?name=$1 [NC]


Соответственно будет заменён на следующий
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ index.php [QSA,L]

О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.20

3.20
4
10.11.2017 17:23:3410.11.2017 17:23:59
Отлично. Не совсем понятно, но все равно круто. Ждем и походу будем разбираться и вносить изменения в свою сборку
3.92

3.92
Открыть Ответить
чтобывопроспривелссылкамвзялисьсейчасподобнымдажебеспокоитпереходеговорюсделатьошибкаотдаваласьдругой
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь