Операторы поисковой системы Google. PHP: Наследование

Поисковые операторы (специальные символы, которые добавляют к поисковому запросу) помогают получить огромное количество полезной информации о сайте. С их помощью можно существенно сузить диапазон поиска и найти нужную информацию. В основном, операторы в разных поисковых системах совпадают, но есть и различия. Поэтому рассмотрим операторы для Google и Яндекс по отдельности.

Операторы Google

Рассмотрим для начала простейшие операторы :

+ - оператор «плюс» используется для нахождения слов в одном предложении, просто вставьте данный символ между словами. Например, сделав запрос типа «зимние + шины + для + ниссана», вы получите в выдаче те сайты, в которых есть предложения с полным набором всех слов из запроса.

- - оператор «минус» поможет исключить из запроса нежелательные слова. Например, если сделать запрос «Крестный отец -онлайн», то вам выдадут сайты с информацией о фильме, обзором, рецензией и т.д., но исключат сайты с онлайн просмотром.

.. - поможет для поиска результатов, содержащих числа в указанном диапазоне.

@ и # - символы для поиска по тегам и хештегам социальных сетей.

OR - оператор «или», с его помощью можно найти страницы на которых встречается хотя бы одно из нескольких слов.

« » - кавычки сообщают поисковику, что вам необходимо найти сайты, где введенные слова находятся в указанном порядке - точное вхождение.

Сложные операторы :

site: поможет найти необходимую информацию на конкретном сайте.

cache: полезный оператор в случае если содержимое какой-либо страницы изменилось или было заблокировано. Покажет кешированную версию. Пример: cache:сайт

info: служит для показа всей информации об адресе.

related: отличный оператор для поиска сайтов с похожим контентом.

allintitle: выводятся страницы, у которых в теге title присутствуют указанные в запросе слова

allinurl: великолепный оператор, с помощью которого можно найти действительно нужные страницы. Показывает сайты, содержащие в адресе страницы указанные слова. К сожалению, всё еще мало сайтов в российском сегменте интернета используют кириллицу, поэтому придется использовать либо транслитерацию, например, allinurl:steklopakety, либо латиницу.

inurl: делает тоже самое что и оператор выше, но отбор происходит только для одного слова.

allintext: выборка страниц производится именно по содержимому страницы. Может быть полезно, если вы ищете какую-то информацию, но адрес сайта просто напросто забыли.

intext: тоже самое только для одного слова.

allinanchor: оператор показывает страницы, у которых в описании есть ключевые слова. Например: allinanchor: часы наручные.

inanchor: тоже самое только по одному ключевому слову.

Операторы Яндекс

Простые операторы :

! - ставится перед ключевым словом и в результатах поиска выдаются страницы, где указано точно такое же слово (без изменений словоформы).

+ - так же как и у Google, отображаются страницы со всеми словами, указанными между плюсом.

« » - показывает точное совпадение фразы.

() - используется для группировки слов в сложных запросах.

& - нужен для поиска страниц, в которых слова, объединенные данным оператором, встречаются в одном предложении.

* - служит для поиска пропущенных слов в цитатах. Например: Россия * душа. Один оператор * заменяет одно слово.

Следующие операторы уже встроены в расширенный поиск Яндекса, поэтому запоминать их нет смысла, но всё же мы объясним, что каждый из них делает.

title: поиск по заголовкам страниц сайтов

url: поиск по страницам, размещенным по заданному адресу, например url:сайт/blog/*

host: производит поиск по всему хосту.

site: здесь поиск производится уже по всем поддоменам и страницам сайта.

inurl: поиск по страницам только данного домена с применением ключевых слов. Например, inurl:сайт блог

mime: поиск документов заданного типа, например mime:xls.

cat: поиск по сайтам, которые присутствуют в Яндекс.Каталоге, а также регион и рубрика которых совпадает с заданным. Например: автомобиль cat:ID_категории

Вот как эти операторы выглядят в самом поисковике:

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

Если вы используете в работе еще какие-то операторы, которые мы не учли, делитесь в комментариях. Обсудим =)

Получение частных данных не всегда означает взлом - иногда они опубликованы в общем доступе. Знание настроек Google и немного смекалки позволят найти массу интересного - от номеров кредиток до документов ФБР.

WARNING

Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.

К интернету сегодня подключают всё подряд, мало заботясь об ограничении доступа. Поэтому многие приватные данные становятся добычей поисковиков. Роботы-«пауки» уже не ограничиваются веб-страницами, а индексируют весь доступный в Сети контент и постоянно добавляют в свои базы не предназначенную для разглашения информацию. Узнать эти секреты просто - нужно лишь знать, как именно спросить о них.

Ищем файлы

В умелых руках Google быстро найдет все, что плохо лежит в Сети, - например, личную информацию и файлы для служебного использования. Их частенько прячут, как ключ под половиком: настоящих ограничений доступа нет, данные просто лежат на задворках сайта, куда не ведут ссылки. Стандартный веб-интерфейс Google предоставляет лишь базовые настройки расширенного поиска, но даже их будет достаточно.

Ограничить поиск по файлам определенного вида в Google можно с помощью двух операторов: filetype и ext . Первый задает формат, который поисковик определил по заголовку файла, второй - расширение файла, независимо от его внутреннего содержимого. При поиске в обоих случаях нужно указывать лишь расширение. Изначально оператор ext было удобно использовать в тех случаях, когда специфические признаки формата у файла отсутствовали (например, для поиска конфигурационных файлов ini и cfg, внутри которых может быть все что угодно). Сейчас алгоритмы Google изменились, и видимой разницы между операторами нет - результаты в большинстве случаев выходят одинаковые.


Фильтруем выдачу

По умолчанию слова и вообще любые введенные символы Google ищет по всем файлам на проиндексированных страницах. Ограничить область поиска можно по домену верхнего уровня, конкретному сайту или по месту расположения искомой последовательности в самих файлах. Для первых двух вариантов используется оператор site, после которого вводится имя домена или выбранного сайта. В третьем случае целый набор операторов позволяет искать информацию в служебных полях и метаданных. Например, allinurl отыщет заданное в теле самих ссылок, allinanchor - в тексте, снабженном тегом , allintitle - в заголовках страниц, allintext - в теле страниц.

Для каждого оператора есть облегченная версия с более коротким названием (без приставки all). Разница в том, что allinurl отыщет ссылки со всеми словами, а inurl - только с первым из них. Второе и последующие слова из запроса могут встречаться на веб-страницах где угодно. Оператор inurl тоже имеет отличия от другого схожего по смыслу - site . Первый также позволяет находить любую последовательность символов в ссылке на искомый документ (например, /cgi-bin/), что широко используется для поиска компонентов с известными уязвимостями.

Попробуем на практике. Берем фильтр allintext и делаем так, чтобы запрос выдал список номеров и проверочных кодов кредиток, срок действия которых истечет только через два года (или когда их владельцам надоест кормить всех подряд).

Allintext: card number expiration date /2017 cvv

Когда читаешь в новостях, что юный хакер «взломал серверы» Пентагона или NASA, украв секретные сведения, то в большинстве случаев речь идет именно о такой элементарной технике использования Google. Предположим, нас интересует список сотрудников NASA и их контактные данные. Наверняка такой перечень есть в электронном виде. Для удобства или по недосмотру он может лежать и на самом сайте организации. Логично, что в этом случае на него не будет ссылок, поскольку предназначен он для внутреннего использования. Какие слова могут быть в таком файле? Как минимум - поле «адрес». Проверить все эти предположения проще простого.


Inurl:nasa.gov filetype:xlsx "address"


Пользуемся бюрократией

Подобные находки - приятная мелочь. По-настоящему же солидный улов обеспечивает более детальное знание операторов Google для веб-мастеров, самой Сети и особенностей структуры искомого. Зная детали, можно легко отфильтровать выдачу и уточнить свойства нужных файлов, чтобы в остатке получить действительно ценные данные. Забавно, что здесь на помощь приходит бюрократия. Она плодит типовые формулировки, по которым удобно искать случайно просочившиеся в Сеть секретные сведения.

Например, обязательный в канцелярии министерства обороны США штамп Distribution statement означает стандартизированные ограничения на распространение документа. Литерой A отмечаются публичные релизы, в которых нет ничего секретного; B - предназначенные только для внутреннего использования, C - строго конфиденциальные и так далее до F. Отдельно стоит литера X, которой отмечены особо ценные сведения, представляющие государственную тайну высшего уровня. Пускай такие документы ищут те, кому это положено делать по долгу службы, а мы ограничимся файлами с литерой С. Согласно директиве DoDI 5230.24, такая маркировка присваивается документам, содержащим описание критически важных технологий, попадающих под экспортный контроль. Обнаружить столь тщательно охраняемые сведения можно на сайтах в домене верхнего уровня.mil, выделенного для армии США.

"DISTRIBUTION STATEMENT C" inurl:navy.mil

Очень удобно, что в домене.mil собраны только сайты из ведомства МО США и его контрактных организаций. Поисковая выдача с ограничением по домену получается исключительно чистой, а заголовки - говорящими сами за себя. Искать подобным образом российские секреты практически бесполезно: в доменах.ru и.рф царит хаос, да и названия многих систем вооружения звучат как ботанические (ПП «Кипарис», САУ «Акация») или вовсе сказочные (ТОС «Буратино»).


Внимательно изучив любой документ с сайта в домене.mil, можно увидеть и другие маркеры для уточнения поиска. Например, отсылку к экспортным ограничениям «Sec 2751», по которой также удобно искать интересную техническую информацию. Время от времени ее изымают с официальных сайтов, где она однажды засветилась, поэтому, если в поисковой выдаче не удается перейти по интересной ссылке, воспользуйся кешем Гугла (оператор cache) или сайтом Internet Archive.

Забираемся в облака

Помимо случайно рассекреченных документов правительственных ведомств, в кеше Гугла временами всплывают ссылки на личные файлы из Dropbox и других сервисов хранения данных, которые создают «приватные» ссылки на публично опубликованные данные. С альтернативными и самодельными сервисами еще хуже. Например, следующий запрос находит данные всех клиентов Verizon, у которых на роутере установлен и активно используется FTP-сервер.

Allinurl:ftp:// verizon.net

Таких умников сейчас нашлось больше сорока тысяч, а весной 2015-го их было на порядок больше. Вместо Verizon.net можно подставить имя любого известного провайдера, и чем он будет известнее, тем крупнее может быть улов. Через встроенный FTP-сервер видно файлы на подключенном к маршрутизатору внешнем накопителе. Обычно это NAS для удаленной работы, персональное облако или какая-нибудь пиринговая качалка файлов. Все содержимое таких носителей оказывается проиндексировано Google и другими поисковиками, поэтому получить доступ к хранящимся на внешних дисках файлам можно по прямой ссылке.

Подсматриваем конфиги

До повальной миграции в облака в качестве удаленных хранилищ рулили простые FTP-серверы, в которых тоже хватало уязвимостей. Многие из них актуальны до сих пор. Например, у популярной программы WS_FTP Professional данные о конфигурации, пользовательских аккаунтах и паролях хранятся в файле ws_ftp.ini . Его просто найти и прочитать, поскольку все записи сохраняются в текстовом формате, а пароли шифруются алгоритмом Triple DES после минимальной обфускации. В большинстве версий достаточно просто отбросить первый байт.

Расшифровать такие пароли легко с помощью утилиты WS_FTP Password Decryptor или бесплатного веб-сервиса .

Говоря о взломе произвольного сайта, обычно подразумевают получение пароля из логов и бэкапов конфигурационных файлов CMS или приложений для электронной коммерции. Если знаешь их типовую структуру, то легко сможешь указать ключевые слова. Строки, подобные встречающимся в ws_ftp.ini , крайне распространены. Например, в Drupal и PrestaShop обязательно есть идентификатор пользователя (UID) и соответствующий ему пароль (pwd), а хранится вся информация в файлах с расширением.inc. Искать их можно следующим образом:

"pwd=" "UID=" ext:inc

Раскрываем пароли от СУБД

В конфигурационных файлах SQL-серверов имена и адреса электронной почты пользователей хранятся в открытом виде, а вместо паролей записаны их хеши MD5. Расшифровать их, строго говоря, невозможно, однако можно найти соответствие среди известных пар хеш - пароль.

До сих пор встречаются СУБД, в которых не используется даже хеширование паролей. Конфигурационные файлы любой из них можно просто посмотреть в браузере.

Intext:DB_PASSWORD filetype:env

С появлением на серверах Windows место конфигурационных файлов отчасти занял реестр. Искать по его веткам можно точно таким же образом, используя reg в качестве типа файла. Например, вот так:

Filetype:reg HKEY_CURRENT_USER "Password"=

Не забываем про очевидное

Иногда добраться до закрытой информации удается с помощью случайно открытых и попавших в поле зрения Google данных. Идеальный вариант - найти список паролей в каком-нибудь распространенном формате. Хранить сведения аккаунтов в текстовом файле, документе Word или электронной таблице Excel могут только отчаянные люди, но как раз их всегда хватает.

Filetype:xls inurl:password

С одной стороны, есть масса средств для предотвращения подобных инцидентов. Необходимо указывать адекватные права доступа в htaccess, патчить CMS, не использовать левые скрипты и закрывать прочие дыры. Существует также файл со списком исключений robots.txt, запрещающий поисковикам индексировать указанные в нем файлы и каталоги. С другой стороны, если структура robots.txt на каком-то сервере отличается от стандартной, то сразу становится видно, что на нем пытаются скрыть.

Список каталогов и файлов на любом сайте предваряется стандартной надписью index of. Поскольку для служебных целей она должна встречаться в заголовке, то имеет смысл ограничить ее поиск оператором intitle . Интересные вещи находятся в каталогах /admin/, /personal/, /etc/ и даже /secret/.

Следим за обновлениями

Актуальность тут крайне важна: старые уязвимости закрывают очень медленно, но Google и его поисковая выдача меняются постоянно. Есть разница даже между фильтром «за последнюю секунду» (&tbs=qdr:s в конце урла запроса) и «в реальном времени» (&tbs=qdr:1).

Временной интервал даты последнего обновления файла у Google тоже указывается неявно. Через графический веб-интерфейс можно выбрать один из типовых периодов (час, день, неделя и так далее) либо задать диапазон дат, но такой способ не годится для автоматизации.

По виду адресной строки можно догадаться только о способе ограничить вывод результатов с помощью конструкции &tbs=qdr: . Буква y после нее задает лимит в один год (&tbs=qdr:y), m показывает результаты за последний месяц, w - за неделю, d - за прошедший день, h - за последний час, n - за минуту, а s - за секунду. Самые свежие результаты, только что ставшие известными Google, находится при помощи фильтра &tbs=qdr:1 .

Если требуется написать хитрый скрипт, то будет полезно знать, что диапазон дат задается в Google в юлианском формате через оператор daterange . Например, вот так можно найти список документов PDF со словом confidential, загруженных c 1 января по 1 июля 2015 года.

Confidential filetype:pdf daterange:2457024-2457205

Диапазон указывается в формате юлианских дат без учета дробной части. Переводить их вручную с григорианского календаря неудобно. Проще воспользоваться конвертером дат .

Таргетируемся и снова фильтруем

Помимо указания дополнительных операторов в поисковом запросе их можно отправлять прямо в теле ссылки. Например, уточнению filetype:pdf соответствует конструкция as_filetype=pdf . Таким образом удобно задавать любые уточнения. Допустим, выдача результатов только из Республики Гондурас задается добавлением в поисковый URL конструкции cr=countryHN , а только из города Бобруйск - gcs=Bobruisk . В разделе для разработчиков можно найти полный список .

Средства автоматизации Google призваны облегчить жизнь, но часто добавляют проблем. Например, по IP пользователя через WHOIS определяется его город. На основании этой информации в Google не только балансируется нагрузка между серверами, но и меняются результаты поисковой выдачи. В зависимости от региона при одном и том же запросе на первую страницу попадут разные результаты, а часть из них может вовсе оказаться скрытой. Почувствовать себя космополитом и искать информацию из любой страны поможет ее двухбуквенный код после директивы gl=country . Например, код Нидерландов - NL, а Ватикану и Северной Корее в Google свой код не положен.

Часто поисковая выдача оказывается замусоренной даже после использования нескольких продвинутых фильтров. В таком случае легко уточнить запрос, добавив к нему несколько слов-исключений (перед каждым из них ставится знак минус). Например, со словом Personal часто употребляются banking , names и tutorial . Поэтому более чистые поисковые результаты покажет не хрестоматийный пример запроса, а уточненный:

Intitle:"Index of /Personal/" -names -tutorial -banking

Пример напоследок

Искушенный хакер отличается тем, что обеспечивает себя всем необходимым самостоятельно. Например, VPN - штука удобная, но либо дорогая, либо временная и с ограничениями. Оформлять подписку для себя одного слишком накладно. Хорошо, что есть групповые подписки, а с помощью Google легко стать частью какой-нибудь группы. Для этого достаточно найти файл конфигурации Cisco VPN, у которого довольно нестандартное расширение PCF и узнаваемый путь: Program Files\Cisco Systems\VPN Client\Profiles . Один запрос, и ты вливаешься, к примеру, в дружный коллектив Боннского университета.

Filetype:pcf vpn OR Group

INFO

Google находит конфигурационные файлы с паролями, но многие из них записаны в зашифрованном виде или заменены хешами. Если видишь строки фиксированной длины, то сразу ищи сервис расшифровки.

Пароли хранятся в зашифрованном виде, но Морис Массар уже написал программу для их расшифровки и предоставляет ее бесплатно через thecampusgeeks.com .

При помощи Google выполняются сотни разных типов атак и тестов на проникновение. Есть множество вариантов, затрагивающих популярные программы, основные форматы баз данных, многочисленные уязвимости PHP, облаков и так далее. Если точно представлять то, что ищешь, это сильно упростит получение нужной информации (особенно той, которую не планировали делать всеобщим достоянием). Не Shodan единый питает интересными идеями, но всякая база проиндексированных сетевых ресурсов!

На этот раз попытаюсь рассказать, какими не должны быть дорки. Так как часто приходится работать с клиентами, у которых дорки выглядят ну совсем бредовыми. А немного пообщавшись, оказывается что они за эти дорки еще и заплатили. Бесит, вобщем) Я сам по глупости своей покупал дорки, и за 300 рублей, и за 20 рублей. Но грамотного человека, который сделает дорки, которые будут хорошими и поисковик будет с них выдавать то, что мне нужно, я пока не встретил. Не пытаюсь никого обидеть, да и дальше только личное мнение. Во-первых, перед покупкой всегда просите 10-15 дорок на проверку, просто визуально оцените их. Надеюсь после данного гайда вы сможете определить более менее заточенные дорки под ваш запрос от таких, которых даже пабликом назвать нельзя. Поехали! Мне проще работать с примерами, поэтому попробую набросать список "игровых" дорок, которые иногда попадаются, и расскажу, на что следует обращать внимание:
Код: mistake.php?gta_5= frame

Разбираем дорку на части: mistake.php - здесь, предполагается, что в ссылке должно присутствовать это слово. На деле, немного не так. Чтобы в ссылке присутствовало слово, его надо применить к оператору inurl: или allinurl:

Допустим, часть ссылок нам попадется с этим словом. Но, именно эта часть (судя по дорке) должна относится к названию страницы. Я не знаю, какой кодер будет делать страницу mistake.php в своем сайте про игры. Безусловно, такие найдутся. Но это будет очень маленький процент.

Как по мне, страница должна быть более менее с популярным названием, использующимся у php кодеров. Еще парочка страниц, которые не желательны в дорках (часто продавцы дорок используют рендомные слова): Код: gta5.php - никто не будет называть так страницу farcry_primal.php farcry_primal.cfm - расширение.cfm используется в ASP.NET, да, на нем пишут, но не так часто как на php. И нарваться на страницу с таким названием, это большая удача kramble.php how_to_work.php catch"in.php - спец. символов не должно быть в названии страницы jzooo.php - вообще, хрен пойми что за страница такая game_of_trone.php - редкая страница, + не относится к играм, а скорей всего к названию фильма Надеюсь, примерную логику вы поняли.

Страница должна иметь логичное название, это главное. Не очень важно, есть в названии что-то относящееся к игровой тематике, или нет. Какие страницы в основном используются кодерами, да и вообще более популярные, которые можно использовать в дорках:

Index.php
private.php
pm.php
user.php
members.php
area.php
config.php
search.php
redirect.php
r.php (тот же redirect)
s.php (тот же search)
mail.php forum.php
post.php account.php
exit.php
query.php
q.php (тот же query) и т.д.

Примерно так.

Название страницы в дорке (если оно есть) должно быть односложным, удобным для использования на сайте, и нести в себе какой-то логический подтекст. Не страшно, что тут у нас нет названий типа steam.php или steam_keys.phpилиroulette.php, нам важно найти побольше ссылок. А чем чаще слово из запроса используется на веб-сайтах, тем лучше. Более менее нужные нам по тематике мы отберем с помощью остальной части из дорки С названиями страниц разобрались, но это не самое главное.

Перейдем ко второй части.

Знакомьтесь, это GET запрос: ?gta_5 - Сразу скажу, не бывает таких запросов. (напоминаю что это мое личное мнение) GET запрос, в идеале, который нам нужен, должен обращаться к базе данных, и в случае SQL инъекции, вызвать ошибку вывода из БД. Это то, что нам нужно. Однако, найти запрос который бы назывался gta_5 - опять же, большая удача. Да и если найдем, надо чтобы он оказался уязвимым. Это снова отбрасывает большую часть ссылок, которые нас интересуют. Еще парочка примеров плохих, не хороших запросов:

Groove=
?paypal=
?qiwi_wallet=
?my_money=
?dai_webmoney=
?skdoooze=
?sadlkjadlkjswq=
?213123=
?777=

Почему paypal плохой запрос? Потому, что предполагается, что этим запросом мы хотим обратится к базе с выборкой по paypal. Никто у себя не хранит базу paypal, разве что, кроме самой компании. Опять-же, ящитаю.

Примеры хороших запросов, добрых, которые все любят использовать, так как они короткие, удобные, легко запоминаются, и имеют хоть какую-то логику:
?id=
?cat=
?cat_id=
?get=
?post=
?frame=
?r=
?redirect= (ну вы поняли)
?banner=
?go=
?leave=
?login=
?pass=
?password=
?username=
?user=
?search=
?s=
?wallet=
?acc=
?balance=
?do=
?page=
?page_id=
?topic=
?forum=
?thread=
?download=
?free=
?message=
Продолжать, конечно, можно бесконечно.
Но это универсальные запросы, которые отлично могут подойти и к микс доркам, и к игровым, и к денежным и к любым другим. Нам будут попадаться форумы, торрент-сайты, и все остальное. Еще для примера, парочка запросов которые могут пригодиться, допустим к игровым запросам:
?game=
?game_id=
?battle=
?log=
?team=
?weapon=
?inv= (инвентарь)
?gamedata=
?player=
?players=
?play= (попадуться сайты с видео-роликами)
?playtag=
?match=

Примерно такая-же логика запросов и к другим тематикам должна применяться, в идеале. Хоть немного надо понимать английский, и осозновать, какие дорки ты покупаешь. В общем и целом, достаточно посмотреть на 10-20 дорок и станет сразу понятно, что за мега приват вы купили, и стоит ли обращаться к данному продавцу впредь. Или вообще, сделать рефунд через блек, если видите что у вас дорки содержат sex.php? или?photo= а вы заказывали дорки под шопы. Руки под поезд таким деятелям

И так, на последок - самая важная часть дорки (которая иногда вообще отсутствует). Если только что мы рассмотрели название GET запроса (не сам запрос), то сейчас как раз переходим к запросу, который может нам помочь найти именно то, что нам нужно. Из нашей тестовой дорки это часть - frame

Не скажу, что это плохой запрос, но учитывая что мы ищем игровые сайты, эффективность такого запроса примерно 15-20%. Для микс дорок, или просто для количества ссылок (лишь бы что-то слить), вполне сойдет. Название запроса может включать в себя, как правильно говорят во многих туториалах и мануалах по доркам, любые слова, относящиееся к нашей тематике. Не будем отходить от игровых запросов, поэтому приведу пример, хороших, годных запросов по играм:
game
gaming
exp
player
level
players
dota
counter-strike
AWP | Aziimov
M19
NAVI
play free
free games
download game
game forum
about game
screenshot game
game guide

Тут должно быть понятно, что за тематика ваших дорок. Если у вас в купленных дорках примерно следующее (а мы покупали игровые): Код: watch freedom text dsadaswe 213123321 ledy gaga fuck america bla bla girl tits free XXX porn futurama s01e13 То опять-же, смело посылайте нафик продавца и выкиньте свои дорки. Игровых сайтов вам не видать:) Еще один момент, с этими запросами можно использовать операторы - intitle: , allintitle: , intext: , allintext: Где, после двоеточия будет сам игровой запрос из списка чуть выше (intitle: game, allintext: play free)

Вроде бы, все что хотел донести. В основном, статья надеюсь будет полезна хоть как-то для новичков (мне бы была полезна и помогла сэкономить несколько сотен рублей, и помогла поставить на место недобросовестных продавцов дорок). Ну а если вы более менее поняли, как делать дорки самому, я буду только рад. Тренируйтесь, набивайте глаз \ руку, ничего сложного особо в дорках нет. И на последок, не знаю как в дампере, но а-парсер спокойно съедает и ищет много ссылок с запросами на русском языке. Почему бы и нет, подумал я. Потестировал, эффект меня порадовал. Можете смеяться))

Frame.php?name= игры бесплатно
get.php?query= скачать КС
search.php?ok= игровые сервера

Наследование - это механизм объектно ориентированного программирования, который позволяет описать новый класс на основе уже существующего (родительского).

Класс, который получается в результате наследования от другого, называется подклассом. Эту связь обычно описывают с помощью терминов «родительский» и «дочерний». Дочерний класс происходит от родительского и наследует его характеристики: свойства и методы. Обычно в подклассе к функциональности родительского класса (который также называют суперклассом) добавляются новые функциональные возможности.

Чтобы создать подкласс, необходимо использовать в объявлении класса ключевое слово extends , и после него указать имя класса, от которого выполняется наследование:

age = $age; } function add_age () { $this->age++; } } // объявляем наследуемый класс class my_Cat extends Cat { // определяем собственный метод подкласса function sleep() { echo "
Zzzzz..."; } } $kitty = new my_Cat(10); // вызываем наследуемый метод $kitty->add_age(); // считываем значение наследуемого свойства echo $kitty->age; // вызываем собственный метод подкласса $kitty->sleep(); ?>

Подкласс наследует доступ ко всем методам и свойствам родительского класса, так как они имеют тип public . Это означает, что для экземпляров класса my_Cat мы можем вызывать метод add_age() и обращаться к свойству $age не смотря на то, что они определены в классе cat . Также в приведенном примере подкласс не имеет своего конструктора. Если в подклассе не объявлен свой конструктор, то при создании экземпляров подкласса будет автоматически вызываться конструктор суперкласса.

Обратите внимание на то, что в подклассах могут переопределяться свойства и методы. Определяя подкласс, мы гарантируем, что его экземпляр определяется характеристиками сначала дочернего, а затем родительского класса. Чтобы лучше это понять рассмотрим пример:

age"; } } class my_Cat extends Cat { public $age = 10; } $kitty = new my_Cat; $kitty->foo(); ?>

При вызове $kitty->foo() интерпретатор PHP не может найти такой метод в классе my_Cat , поэтому используется реализация этого метода заданная в классе Cat . Однако в подклассе определено собственное свойство $age , поэтому при обращении к нему в методе $kitty->foo() , интерпретатор PHP находит это свойство в классе my_Cat и использует его.

Так как мы уже рассмотрели тему про указание типа аргументов, осталось сказать о том, что если в качестве типа указан родительский класс, то все потомки для метода будут так же доступны для использования, посмотрите на следующий пример:

foo(new my_Cat); ?>

Мы можем обращаться с экземпляром класса my_Cat так, как будто это объект типа Cat , т.е. мы можем передать объект типа my_Cat методу foo() класса Cat , и все будет работать, как надо.

Оператор parent

На практике подклассам бывает необходимо расширить функциональность методов родительского класса. Расширяя функциональность за счет переопределения методов суперкласса, в подклассах вы сохраняете возможность сначала выполнить программный код родительского класса, а затем добавить код, который реализует дополнительную функциональность. Давайте разберем как это можно сделать.

Чтобы вызвать нужный метод из родительского класса, вам понадобится обратиться к самому этому классу через дескриптор. Для этой цели в PHP предусмотрено ключевое слово parent . Оператор parent позволяет подклассам обращаться к методам (и конструкторам) родительского класса и дополнять их существующую функциональность. Чтобы обратиться к методу в контексте класса, используются символы " :: " (два двоеточия). Синтаксис оператора parent:

Parent::метод_родительского_класа

Эта конструкция вызовет метод, определенный в суперклассе. Вслед за таким вызовом можно поместить свой программный код, который добавит новую функциональность:

title = $title; $this->price = $price; } } class new_book extends book { public $pages; function __construct($title, $price, $pages) { // вызываем метод-конструктор родительского класса parent::__construct($title, $price); // инициализируем свойство определенное в подклассе $this->pages = $pages; } } $obj = new new_book("азбука", 35, 500); echo "Книга: $obj->title
Цена: $obj->price
Страниц: $obj->pages"; ?>

Когда в дочернем классе определяется свой конструктор, PHP не вызывает конструктор родительского класса автоматически. Это необходимо сделать вручную в конструкторе подкласса. Подкласс сначала в своем конструкторе вызывает конструктор своего родительского класса, передавая нужные аргументы для инициализации, исполняет его, а затем выполняется код, который реализует дополнительную функциональность, в данном случае инициализирует свойство подкласса.

Ключевое слово parent можно использовать не только в конструкторах, но и в любом другом методе, функциональность которого вы хотите расширить, достигнуть этого можно, вызвав метод родительского класса:

name}."; return $str; } } class my_Cat extends Cat { public $age = 5; function getstr() { $str = parent::getstr(); $str .= "
Возраст: {$this->age} лет."; return $str; } } $obj = new my_Cat; echo $obj->getstr(); ?>

Здесь сначала вызывается метод getstr() из суперкласса, значение которого присваивается переменной, а после этого выполняется остальной код определенный в методе подкласса.

Теперь, когда мы познакомились с основами наследования, можно, наконец, рассмотреть вопрос видимости свойств и методов.

public, protected и private: управление доступом

До этого момента мы явно объявляли все свойства как public (общедоступные). И такой тип доступа задан по умолчанию для всех методов.

Элементы класса можно объявлять как public (общедоступные), protected (защищенные) и private (закрытые). Рассмотрим разницу между ними:

  • К public (общедоступным) свойствам и методам, можно получить доступ из любого контекста.
  • К protected (защищенным) свойствам и методам можно получить доступ либо из содержащего их класса, либо из его подкласса. Никакому внешнему коду доступ к ним не предоставляется.
  • Вы можете сделать данные класса недоступными для вызывающей программы с помощью ключевого слова private (закрытые). К таким свойствам и методам можно получить доступ только из того класса, в котором они объявлены. Даже подклассы данного класса не имеют доступа к таким данным.

public - открытый доступ:

hello"; } } $obj = new human; // доступ из вызывающей программы echo "$obj->age"; // Допустимо $obj->say(); // Допустимо?>

private - доступ только из методов класса:

age"; } } $obj = new human; // напрямую из вызывающей программы доступа к закрытым данным нет echo "$obj->age"; // Ошибка! доступ закрыт! // однако с помощью метода можно выводить закрытые данные $obj->say(); // Допустимо?>

protected - защищенный доступ:

Модификатор protected с точки зрения вызывающей программы выглядит точно так же, как и private: он запрещает доступ к данным объекта извне. Однако в отличие от private он позволяет обращаться к данным не только из методов своего класса, но также и из методов подкласса.

Данная статья будет в первую очередь полезна начинающим оптимизаторам, потому что более продвинутые и так должны знать о них все. Для того, чтобы использовать данную статью с максимальной эффективностью, желательно точно знать, какие слова необходимо поднять на нужные позиции. Если вы еще точно не уверены в списке слов, или воспользуйтесь сервисом подсказки ключевых слов, он немного запутан, но разобраться можно.

Важно! Будьте уверены, Google прекрасно понимает, что обычные пользователи не будут ими пользоваться и только специалисты по продвижению прибегают к их помощи. Поэтому Google может немного искажать предоставляемую информацию

Оператор Intitle:

Использование: intitle:слово
Пример: intitle:раскрутка сайта
Описание: При использовании этого оператора вы получите список страниц, в заголовке (title) которых есть интересующее вас слово, в нашем случае это фраза «раскрутка сайта» целиком. Обратите внимание на то, что после двоеточия не должно быть пробела. Заголовок страницы имеет важное значение при ранжировании, поэтому отнеситесь к составлению заголовков со всей ответственностью. При использовании этой переменной вы сможете оценить приблизительное количество конкурентов, которые так же хотят быть на лидирующих позициях по этому слову.

Оператор Inurl:

Использование: inurl:фраза
Пример: inurl:расчет стоимости поисковой оптимизации
Описание: Эта команда показывает сайты или страницы, которые имеют в адресе URL исходное ключевое слово. Обратите внимание на то, что после двоеточия не должно быть пробела.

Оператор Inanchor:

Использование: inanchor:фраза
Пример: inanchor:seo книги
Описание: Использование этого оператора поможет вам увидеть страницы, на которые есть ссылки с используемым ключевым словом. Это очень важная команда, но, к сожалению, поисковые машины неохотно делятся этой информацией с оптимизаторами по очевидным причинам. Есть сервисы, Linkscape and Majestic SEO, которые готовы предоставить вам эту информацию за определенную плату, но будьте уверены, информация того стоит.

Так же, стоит помнить, что сейчас Google все больше внимания уделяет «трастовости» сайта и все меньше ссылочной массе. Безусловно, ссылки все еще один из самых важных факторов, но «трастовость» играет все более значимую роль.

Неплохие результаты дает комбинация двух переменных, например intitle:продвижение inanchor:раскрутка сайта. И что же мы видим, поисковая система покажет нам основных конкурентов, в заголовке страницы которых содержится слово «продвижение» и входящими ссылками с анкором «раскрутка сайта ».

К сожалению, данная комбинация не позволяет узнать «трастовость» домена, которая как мы уже говорили, является очень важным фактором. К примеру, множество старых корпоративных сайтов не имеют такого количества ссылок, как их молодые конкуренты, но они имеют много старых ссылок, которые и вытягивают эти сайты на вершину поисковой выдачи.

Оператор Site:

Использование: site:адрес сайта
Пример: site:www.aweb.com.ua
Описание: С помощью этой команды вы можете увидеть список страниц, которые проиндексированы поисковой системой и о которых она знает. Применяется в основном для того, чтобы узнать о страницах конкурентов и проанализировать их.

Оператор Cache:

Использование: cache:адрес страницы
Пример: cache:www.aweb.com.ua
Описание: Эта команда показывает «снимок» страницы с того момента, когда робот заходил на сайт последний раз и вообще, как он видит содержимое страницы. Проверяя дату кэша страницы, вы можете определить, как часто роботы заходят на сайт. Чем более авторитетный сайт, тем чаще роботы на него заходят и соответственно, чем менее авторитетный (по мнению Google) сайт, тем реже роботы делают снимки страницы.

Кэш очень важен при покупке ссылок. Чем ближе дата кэширования страницы к дате покупки ссылки – тем быстрее ваша ссылка будет проиндексирована поисковой системой Google. Иногда получалось находить страницы с возрастом кэша в 3 месяца. Купив ссылку на таком сайте, вы только напрасно потратите свои средства, ведь вполне возможно, что ссылка никогда не будет проиндексирована.

Оператор Link:

Использование: link:url
Пример: link:www.aweb.com.ua
Описание: Оператор link: ищет и показывает страницы, которые ссылаются на указанный адрес url. Это может быть как главная страница сайта, так и внутренняя.

Оператор Related:

Использование: related:url
Пример: related:www.aweb.com.ua
Описание: Оператор related: выводит страницы, которые, по мнению поисковой системы, похожи с указанной страницей. Для человека все полученные страницы могут и не иметь ничего похожего, но для поисковой системы это так.

Оператор Info:

Использование: info:url
Пример: info:www.aweb.com.ua
Описание: При использовании этого оператора, мы сможем получить информацию о странице, которая известна поисковой системе. Это может быть автор, дата публикации и многое другое. Дополнительно, на странице поиска, Google предлагает сразу несколько действий, которые он может сделать с этой страницей. Или, проще говоря, он предложит использовать некоторые операторы, которые мы описали выше.

Оператор Allintitle:

Использование: allintitle:фраза
Пример: allintitle:раскрутка aweb
Описание: Если мы начнем поисковой запрос с этого слова, мы получим список страниц, в заголовке которых есть вся фраза. К примеру, если мы попробуем поискать слово allintitle:раскрутка aweb, то получим список страниц, в заголовке которых упоминаются эти оба слова. И совсем не обязательно они должны идти друг за другом, они могут располагаться в разных местах заголовка.

Оператор Allintext:

Использование: allintext:слово
Пример: allintext:оптимизация
Описание: Этот оператор ищет все страницы, в теле текста которых есть указанное слово. Если мы попробуем использовать allintext:оптимизация aweb, то увидим список страниц, в тексте которых встречаются эти слова. То есть, не вся фраза целиком «оптимизация aweb», а оба слова и «оптимизация» и «aweb».