Показаны сообщения с ярлыком сеть. Показать все сообщения
Показаны сообщения с ярлыком сеть. Показать все сообщения

27 окт. 2011 г.

Перенос сайта на новый хостинг

Многие обладатели интернет сайтов, от малых - до великих, сталкивались с проблемой переноса своего детища с одного хостинга на другой по различным причинам. В данной статье я опишу пару способов переноса всего сайта с одного хостинга на другой.
Дано:
домен:
test.сom
старый сервер:
ip: OLD_IP
document_root:OLD_DR
user:OLD_USER
pass:OLD_PASS
БД user:OLD_DB_USER
БД pass:OLD_DB_PASS
БД имя:OLD_DB_NAME
новый сервер:
ip: NEW_IP
user:NEW_USER
pass:NEW_PASS
document_root:NEW_DR
БД user:NEW_DB_USER
БД pass:NEW_DB_PASS
БД имя:NEW_DB_NAME
Суть переноса сайта с одного хостинга на другой - копирование всей информации(файлов и БД) со старого сервера на новый.

1-ый способ - самый простой.
В большинстве случаев, на каждом хостинге присутствует доступ к серверу по протоколу FTP и доступ к БД с помощью PhpMyAdmin. Первым делом - необходимо скачать все содержимое домашнего каталога со старого хостинга на рабочий компьютер, поправить конфигурационные файлы под нужды нового хостинга, такие как учетная запись для доступа к БД, имя БД, полный путь к домашнему каталогу на новом хостинге и др., и перенести все файлы на новый сервер. Перенос БД заключается в экспорте данных при помощи PMA на старом сервере и импорту оных на новом сервере( для успешной операции желательно использовать сжатие данных при экспорте, потому как на многих хостингах максимальный размер файла для импорта в PMA ограничивается размером в 8 Мб, если же все данные все равно не влазят в ограниченный объем - можно переносить таблицы БД по частям).

2-ый способ.
При наличии удлаенного доступа к старому серверу и новому по протоколу ssh можно поступить следующим образом:
подключится к старому серверу;
сделать дамп базы данных на старом сервере при помощи утилиты mysqldump:
>mysqldump OLD_DB_NAME –uOLD_DB_USER -p > dump.sql
и положить дамп в корень сайта;
создать архив корня сайта со всеми файлами и положить данный архив в корень сайта
>tar -cvzf site.tar.gz *
;
подключится к новому серверу;
при помощи утилиты wget скачать архив сайта минуя рабочий компьютер;
>wget http://test.com/site.tar.gz
;
распаковать архив в корень сайта
>tar xvzf site.tar.gz
;
восстановить БД при помощи команды:
>mysql NEW_DB_NAME –uNEW_DB_USER -p < dump.sql
3-ий способ - самый оптимальный
При наличии удаленного доступа к старому и новому серверам по протоколу ssh и наличия на обоих серверах утилиты rsync:
создаем дамп БД:
>mysqldump OLD_DB_NAME –uOLD_DB_USER -p > dump.sql
выполняем копирование файлов на новый сервер при помощи rsync:
>rsync --progress -zvarle ssh OLD_DR NEW_USER@NEW_IP:NEW_DR && touch OLD_DOCUMENT_ROOT/.done
восстанавливаем БД
>mysql NEW_DB_NAME –uNEW_DB_USER -p < dump.sql

PS:
при работе с серверами по протоколу ssh хорошим тоном является использование утилиты screen(особенно при копировании больших объймов данных), которая позволяет продолжитьь выполнение команды на удаленном сервере при обрыве ssh соединения.
для тестирования успешного переноса сайта на новый сервер необходимо прописать в файле hosts строку вида
NEW_IP test.com
и попробовать зайти на сайт test.com, при полной уверенности, что сайт перенесен нормально - необходимо изменить DNS записи, с перенаправлением трайика test.com на новый сервер.




21 июн. 2010 г.

настройка сети в VMPlayer под Linux

Как то возникла необходимость поправить настройки сети для виртуальной машины, т.к. изначально там все работает под DHCP, а мне необходимо было присвоить статический адрес своему виртуальному серверу, не прописывая жестко настройки на самом сервере. Исходные данные:
ifconfig
vmnet1 Link encap:Ethernet HWaddr 00:50:56:C0:00:01
inet addr:192.168.170.1 Bcast:192.168.170.255 Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fec0:1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:14 errors:0 dropped:0 overruns:0 frame:0
TX packets:32 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

 Необходимо сделать что б виртуальная машина находилась в подсети 192.168.40.0/24 и имела статический адрес 192.168.40.2 посредствам DHCP.

Для поставленной задачи необходимо поправить 2 файла.
В файле /etc/vmware/networking
answer VNET_1_HOSTONLY_NETMASK 255.255.255.0
answer VNET_1_HOSTONLY_SUBNET 192.168.40.0
В файле /etc/vmware/vmnet1/dhcpd/dhcpd.conf
subnet 192.168.40.0 netmask 255.255.255.0

Для нашего сервера дописываем

host devserver {
hardware ethernet 00:0c:29:7e:6f:29;
fixed-address 192.168.40.2;
}
где mac-адрес сервера = 00:0c:29:7e:6f:29

host vmnet1 {
hardware ethernet 00:50:56:C0:00:01;
fixed-address 192.168.40.1;
option domain-name-servers 0.0.0.0;
option domain-name "";
}
- наш dhcp сервер
и для полной работоспособности выставляем
subnet 192.168.40.0 netmask 255.255.255.0
Перезапускаем службы vmware
~ sudo /etc/init.d/vmware stop
~ sudo /etc/init.d/vmware start
И вуаля - получаем требуемый результат