Загрузка...

Как работает Интернет

Тема в разделе Способы заработка создана пользователем ВладимирПутин 7 фев 2014. 3529 просмотров

Загрузка...
  1. ВладимирПутин
    ВладимирПутин Автор темы 7 фев 2014 Привет гость ! :roflanZdarova: Как твои дела? 241 12 янв 2014

    [IMG]



    Поднимаем сервер на localhost-е














    Наш путь в хакинге








    В хакерстве есть два пути: веб-хакинг и крэкинг. Крекинг - это взлом и изучение софта, приложений: написание кряков, кейгенов и т.п. Этот путь довольно сложный, ибо нужно обладать хорошими знаниями языков программирования. Лично я пошёл сначала по пути веб-хакинга, так как он намного интереснее (на мой взгляд), и только недавно начал смотреть в сторону крэкинга (мало что в этом понимая xD). Веб-хакинг подразумевает взлом в интернете (что и понимается под словом "хакерство" чаще всего): это взлом почты, сайтов, форумов, соц. сетей, и т.д. Как вы уже могли догадаться, сначала я поведу вас именно путём веб-хакинга! Но сперва нам необходимо узнать и понять принципы работы всего Интернета: где находятся все эти веб-странички и что из себя представляет "Всемирная паутина".



    Как работает Интернет















    "Всемирная паутина" (она же World-Wide-Web и WWW) содержит множество серверов, имеющих свой IP и URL. Пользователи интернета могут подключаться к серверам и скачивать те файлы, к которым разрешён доступ из сети. Любая веб-страница - это файл, который скачивается с удалённого сервера и открывается браузером пользователя. Это упрощённая схема. На самом деле информация с одной страницы может содержаться на различных серверах, данные могут многократно проходить через ****** и скокс сервера (о них чуть позже) и огибать земной шарик пару раз, прежде чем достигнуть пользователя.



    Поднимаем сервер на localhost-е









    Внимание! Все, кто по каким-либо неведомым причинам не хочет пытаться разобраться в принципе работы и устройстве полноценного веб-сервера, могут скачать и в два щелчка установить localhost-сервер, а точнее платформу для веб-разработчиков Denwer.



    Прочитав урок далее, вы поймёте, как проверить работоспособность locahost сервера и как добавлять на него файлы. Забегая вперёд, скажу, что в случае с дэнвером вместо папки htdocs будет использоваться папка www. Когда установите Denver, он создаст свой виртуальный диск в "Мой компьютер". На этом диске в папке home -> localhost и найдёте папку www.



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









    Для того чтобы лучше понять как работает сервер, мы с вами поднимем (установим то есть =) локальный сервер на своём компьютере! Он не будет доступен из Интернета, только из локальной сети и будет носить скромное имя localhost-сервер. Делаем мы это не для баловства и не чтобы сказать другу: "А у меня свой сервер!", а чтобы мы в дальнейшем имели возможность запускать у себя на тачке php-скрипты. Дело в том, что php (он же пых-пых) - серверный язык программирования (то есть выполняется на сервере, а не у пользователя в броузере) и просто так запустить php-скрипт не получится. Нужно запускать его на сервере, который мы и установим!



    Итак, нам нужно установить связку Apache+PHP+MySQL (Апач - сервер, пых пых - интерпретатор языка php, MySQL - базы данных). Всё это безобразие качаем с официальных сайтов:



    Apache (httpd). В списке выбираем последнюю (по номеру) версию no_ssl. Нас интересуют установочники с расширением .msi



    PHP. Качаем Installer последней версии.



    MySQL. Уносим MSI Installer, соответствующей архитектуре вашей ОС: 32 или 64 bit.









    В первую очередь запускаем установочник апача (Apache.msi), пропускаем лицензионное соглашение и список нововведений и видим окно, где нам предлагают ввести Network Domain, Server name и мыло. Вводим везде localhost (мыло: admin@localhost), выбираем опцию установки для всех, через 80 порт, как сервис. После установки стоит убрать апач из автозагрузки, куда он залазит без спроса (он ведь нам не каждый день нужен будет)! Проверим как всё работает... в адресной строке вбацаем localhost. Если всё будет работать - сразу сами поймёте



    Теперь будем ставить php. Для этого просто папку PHP копируем в папку, куда установили апач. Теперь из этой папки (php) нужно файл php.ini-development скопировать в папку WINDOWS и переименовать в php.ini. Затем в нём (php.ini) найдите строку extension_dir и измените указанное там "C:/php5/ext" на путь_к_папке_с_апачом\php\ext (то есть адрес на вашем жёстком диске к папке ext, которая в папке php). Далее в папке с апачом откроем папку conf и в ней найдём файл httpd.conf. Открываем его блокнотом и ищем строку














    Код
    [I]AddType application/x-gzip .gz .tgz[/I]







    После неё на новой строке пишем:



    Код
    [I]AddType application/x-httpd-php phtml php[/I][I]
    [/I]






    Теперь почти в начале документа находим целый блок строчек, начинающихся с LoadModule. В конец этого блока с новой строки дописываем:







    [/CODE]
    Код
    [/I][I]LoadModule php5_module путь_к_папке_с_апачом\php\php5apache2_2.dll[/I][I]









    Осталось только настроить параметр DirectoryIndex. Найдём её и отредактируем:





    Код
    [/I][I]DirectoryIndex index.html index.htm index.html.var index.php

    [/I][I]







    Пора устанавливать MySQL! Запускаем установочник, выбираем полную установку (complete), по окончании установки ставим флажок "Configure the MySQL Server now". Выбираем расширенную конфигурацию, а затем ничего не меняем, а просто нажимаем кнопку далее, пока не дойдём до этапа выбора набора символов (character set). На этом этапе нам необходимо выбрать последний пункт и в выпадающем списке character set установить набор cp1251 (кириллица). Жмём далее и видим в следующем окне 3 флажка. Тут нам нужно снять второй и установить третий флажки (отключить автозапуск сервиса и добавить видимость bin-дирректории для виндосовской cmd). Далее нам предлагают установить пароль доступа к управлению MySQL. Обязательно ставим и запоминаем(!) этот пароль (не желательно оставлять поле пустым). Последний этап: тыкаем "Execute". Теперь нам надо отредактировать файл my.ini (он находится в папке, куда вы установили MySQL).

    Сначала находим строку port=3306 (в разделе [client]) и после неё на новой строке пишем такое:





    Code

    character-sets-dir="путь_к_папке_куда_установили_MySQL\share\charsets"





    Чуть ниже в документе у нас есть блок "[mysqld]". Вот в нём после строки port=3306 с новой строки (а точнее с двух строк) пишем текст:







    Код
    [/I][I]character-sets-dir="путь_к_папке_куда_установили_MySQL\share\charsets" 

    init-connect="SET NAMES cp1251"[/I][I]









    Далее ищем строку default-storage-engine=INNODB и меняем в ней INNODB на MYISAM. Сохраняем изменения, закрываем документик.

    Установка закончена!





    Теперь выясним зачем мы всё это сваяли, как оно работает и работает-ли вообще... Зайдите в папку с апачом и найдите там папку htdocs. Это корневая директория, куда вы будете кидать все файлы, которые захотите открыть на локальном сервере (кстати, советую сразу сделать ярлык этой папки в каком-нибудь более доступном месте, потому что каждый раз лазить туда через "Мой компьютер" не очень удобно). Первым всегда открывается файл с именем index, если ничего другого не указано (файлом .htacces). Вот мы и создадим сейчас там файл index.php, содержимое которого будет таким:

    Code





    Код
    [/I][I]<?php 

    print "Current PHP version: ". phpversion() ."";



    $link = mysql_connect("localhost", "root","YOURPASSWORD") or die("Could not connect"); //В этой строчке измените пароль доступа к mysql НА ТОТ, КОТОРЫЙ ВЫ ВВОДИЛИ ПРИ УСТАНОВКЕ MYSQL!!!

    if( !$link ) die( mysql_error() );



    $db_list = mysql_list_dbs($link);



    while ($row = mysql_fetch_object($db_list))

    {

    echo "

    Database \"".$row->Database."\"

    \n";

    $result = mysql_list_tables($row->Database);



    if(!$result) die( "DB Error, could not list tables\n MySQL Error: ".mysql_error() );

    else {

    while ($row = mysql_fetch_row($result))

    print "Table: $row[0]

    ";

    mysql_free_result($result);

    }

    }

    ?> [/I][I]









    Теперь нужно запустить всё это хозяйство. Для этого в папке с апачом есть папка bin, а в ней файл ApacheMonitor.exe. Его тоже советую вынести ярлыком куда-нибудь, куда вы вынесли ярлык к папке htdocs. Запускайте эту программу. Вы увидите строку Apache 2.2 в списке сервисов (а у нас больше ничего и нет ). Жмём Start, а после того как сервер запустится нажимаем Services. В появившемся списке находим сервис MySQL и запускаем его. Если хотите, можете настроить его на автоматический запуск.

    Наш localhost-сервер запущен! Впишите в адресную строку: "localhost", и перед вами окажется результат работы скрипта. Выглядеть всё должно примерно так:





    Код
    [/I][I]Current PHP version: 5.3.0

    Database "information_schema"



    Deprecated: Function mysql_list_tables() is deprecated in F:\Progs\Apache\htdocs\index.php on line 19

    Table: CHARACTER_SETS

    Table: COLLATIONS

    Table: COLLATION_CHARACTER_SET_APPLICABILITY

    Table: COLUMNS

    Table: COLUMN_PRIVILEGES

    Table: ENGINES

    Table: EVENTS

    Table: FILES

    Table: GLOBAL_STATUS

    Table: GLOBAL_VARIABLES

    Table: KEY_COLUMN_USAGE

    Table: PARTITIONS

    Table: PLUGINS

    Table: PROCESSLIST

    Table: PROFILING

    Table: REFERENTIAL_CONSTRAINTS

    Table: ROUTINES

    Table: SCHEMATA

    Table: SCHEMA_PRIVILEGES

    Table: SESSION_STATUS

    Table: SESSION_VARIABLES

    Table: STATISTICS

    Table: TABLES

    Table: TABLE_CONSTRAINTS

    Table: TABLE_PRIVILEGES

    Table: TRIGGERS

    Table: USER_PRIVILEGES

    Table: VIEWS

    Database "mysql"



    Deprecated: Function mysql_list_tables() is deprecated in F:\Progs\Apache\htdocs\index.php on line 19

    Table: columns_priv

    Table: db

    Table: event

    Table: func

    Table: general_log

    Table: help_category

    Table: help_keyword

    Table: help_relation

    Table: help_topic

    Table: host

    Table: ndb_binlog_index

    Table: plugin

    Table: proc

    Table: procs_priv

    Table: servers

    Table: slow_log

    Table: tables_priv

    Table: time_zone

    Table: time_zone_leap_second

    Table: time_zone_name

    Table: time_zone_transition

    Table: time_zone_transition_type

    Table: user

    Database "test"



    Deprecated: Function mysql_list_tables() is deprecated in F:\Progs\Apache\htdocs\index.php on line 19[/I][I]









    Если бы мы не установили пых-пых, то наш php-скрипт не выполнялся бы, и мы увидели бы не результат его работы, а сам скрипт. Так же при неправильно установленном или настроенном MySQL сервере, скрипт вывел бы сообщение об ошибке. Если это случилось, переустановите сервер заново! Итак, мы, наконец, имеем в своём распоряжении собственный (хоть и только локальный) сервер, на котором сможем тестировать php-скрипты, фейки и многое другое. Но самое главное - теперь у нас есть возможность лекго изучать php, используя наш сервер как тренировочную площадку!
    [/size][/I][/font][/center]
     
    Этот материал оказался полезным?
    Вы можете отблагодарить автора темы путем перевода средств на баланс
    Отблагодарить автора
    7 фев 2014 Изменено
  2. mstr
    mstr 7 фев 2014 Вы мне надоели :wotpopcorn: 6688 28 июн 2013
    Размер шрифта меньше сделай ,читать не возможно.
     
  3. ВладимирПутин
    ВладимирПутин Автор темы 8 фев 2014 Привет гость ! :roflanZdarova: Как твои дела? 241 12 янв 2014
    Исправил
     
Top