2015-04-08 2 views
0

Итак, у нас есть настройка сервера с OpenDNS, и у нас включен только режим «Белый список», который блокирует все домены, независимо от настроек вашего фильтра. Доступны только домены в списке разрешений. Но если пользователь идет, скажем, officedepot.com, есть другие домены, которые нужно будет белым, чтобы полностью разрешить доступ к officedepot.com.Есть ли способ отслеживать запрашиваемые домены из URL?

Я пытаюсь написать инструмент для нашей системы, где мы можем отбросить домен на веб-страницу, и он предоставит мне подчиненные домены, запрашиваемые с сайта. Это похоже на инструменты разработчика Chrome -> sources, где он дает вам список запрошенных доменов. Есть ли способ в Javascript или PHP для отслеживания этих доменов при использовании корневого домена в качестве объекта для запроса?

Я знаю, что пользователь может просто перейти на инструменты разработчика, но это нетехнические группы.

спасибо, много оценен.

+0

почему другие домены из officedepot.com нуждаются в белый список? – dandavis

+0

Поскольку в режиме «только для белых списков» он блокирует все имена доменов, за исключением того, что указано в списке разрешений. Поэтому, если officedepot.com ссылается на контент с akamai.net, тогда akamai.net будет заблокирован, если он не будет сохранен в списке разрешений. –

+0

Эта проблема намного сложнее, чем вы думаете. Есть много угловых случаев, таких как iframes, субдомены и CDN. Не говоря уже о том, что вам нужно будет знать все возможные внешние ресурсы, используемые доменом, на всех страницах, включая те, которые доступны только для зарегистрированных пользователей. Даже после того, как вы решите все эти проблемы, officedepot.com все еще может удалить и добавить новые внешние домены. – robbmj

ответ

-1

Только что-то, что я нашел в Google, вы должны получить то, что хотите, изменив это.

$pattern = '/<a[^>]+href="([^"]+)"[^"]*>/is'; 
$subject = file_get_contents($_GET['page']); 
preg_match_all($pattern, $subject, $array); 
print_r($array[1]); 

Источник: http://forums.phpfreaks.com/topic/141828-solved-regex-link-grabber/

+1

Что делать, если страница содержит 'iframe' и что' iframe' включает в себя другие домены? Это учитывает только одну страницу из домена. – robbmj

+0

о, очень круто! Я тоже искал Google, но просто не знал, как сформулировать вопрос, потому что я никуда не денусь. –

+0

В этом случае его нужно будет зациклировать и запустить снова, используя ссылку, из которой собирается контент iframe. – RugerSR9

Смежные вопросы