В настоящее время я собираюсь перенести несколько сайтов с моего общего хостинга cpanel на VPS. Дошло до того, что я хочу сделать больше и узнал о некоторых вещах системного администратора через свое место работы / работу.
Во-первых, какие важные вещи я должен знать? Я понимаю, как настроить конфигурацию apache, вероятно, могу решить, как настроить учетные записи электронной почты и тому подобное, однако я уверен, что есть гораздо больше, что мне не показали, поскольку я программист, а не системный администратор.
В настоящее время у меня есть несколько сайтов на wordpress, несколько статических сайтов и zen cart (содрогается), и будет переносить их все, включая учетные записи электронной почты, на новый VPS.
Если это поможет, я использую виртуальный хостинг Hostgator и планирую перейти на Thrus VPS (Сайт Thrust VPS) на их базовом плане VPS OpenVZ. У них есть опция cpanel, но она НАМНОГО дороже. Могу ли я, например, использовать cpanel для импорта всего, а затем выключить его и делать все со стороны терминала? Я мало знаю о том, как cpanel на самом деле выполняет свою работу.
Кроме того, их три пакета хостинга * nix - это OpenVZ, Xen PV или Xen HVM, и, честно говоря, хотя я исследовал каждый из них, я не совсем уверен, какой из них мне нужен и почему, хотя Подозреваю OpenVZ.
cpainl создает сжатый архив для отдельных учетных записей. Чтобы восстановить / импортировать домен / аккаунт в не-cpanel system, распакуйте (разархивируйте?) архив и посмотрите на файловую структуру в нем:
total 96K
drwx------. 2 ilmostro 6 Aug 21 03:02 bandwidth
drwx------. 2 ilmostro 6 Aug 21 03:02 bandwidth_db
drwx------. 2 ilmostro 6 Aug 21 03:02 counters
drwx------. 2 ilmostro 19 Aug 21 03:02 cp
drwx------. 2 ilmostro 6 Aug 21 03:02 cron
drwx------. 2 ilmostro 26 Aug 21 03:02 dnszones
drwx------. 4 ilmostro 33 Aug 21 03:02 domainkeys
drwx--x--x. 19 ilmostro 4.0K Aug 21 03:02 homedir
drwx------. 2 ilmostro 6 Aug 21 03:02 httpfiles
drwx------. 2 ilmostro 24 Aug 21 03:02 ips
drwx------. 2 ilmostro 6 Aug 21 03:02 locale
drwx------. 2 ilmostro 99 Aug 21 03:02 logs
drwx------. 2 ilmostro 93 Aug 21 03:02 meta
drwx------. 2 ilmostro 6 Aug 21 03:02 mm
drwx------. 4 ilmostro 27 Aug 21 03:02 mma
drwx------. 2 ilmostro 6 Aug 21 03:02 mms
drwx------. 2 ilmostro 4.0K Aug 21 03:02 mysql
drwx------. 2 ilmostro 67 Aug 21 03:02 mysql-timestamps
drwx------. 2 ilmostro 6 Aug 21 03:02 psql
drwx------. 2 ilmostro 22 Aug 21 03:02 resellerconfig
drwx------. 2 ilmostro 6 Aug 21 03:02 resellerfeatures
drwx------. 2 ilmostro 6 Aug 21 03:02 resellerpackages
drwx------. 2 ilmostro 6 Aug 21 03:02 ssl
drwx------. 2 ilmostro 4.0K Aug 21 03:02 sslcerts
drwx------. 2 ilmostro 4.0K Aug 21 03:02 sslkeys
drwx------. 2 ilmostro 6 Aug 21 03:02 suspended
drwx------. 2 ilmostro 6 Aug 21 03:02 suspendinfo
drwxr-xr-x. 2 ilmostro 6 Aug 21 03:02 userconfig
drwx------. 2 ilmostro 96 Aug 21 03:02 userdata
drwx------. 2 ilmostro 47 Aug 21 03:02 va
drwx------. 2 ilmostro 47 Aug 21 03:02 vad
drwx------. 2 ilmostro 47 Aug 21 03:02 vf
-rw-------. 1 ilmostro 0 Aug 21 03:02 addons
-rw-------. 1 ilmostro 41K Aug 21 03:02 bandwidth_db.json
-rw-------. 1 ilmostro 0 Aug 21 03:02 digestshadow
-rw-r--r--. 1 ilmostro 0 Aug 21 03:02 has_sslstorage
-rw-------. 1 ilmostro 13 Aug 21 03:02 homedir_paths
-rw-------. 1 ilmostro 1.5K Aug 30 06:09 mysql.sql
-rw-------. 1 ilmostro 0 Aug 21 03:02 nobodyfiles
-rw-------. 1 ilmostro 0 Aug 21 03:02 pds
-rw-r-----. 1 ilmostro 350 Apr 20 03:28 proftpdpasswd
-rw-------. 1 ilmostro 1 Aug 21 03:02 quota
-rw-------. 1 ilmostro 18 Aug 21 03:02 sds
-rw-------. 1 ilmostro 48 Aug 21 03:02 sds2
-rw-------. 1 ilmostro 106 Aug 21 03:02 shadow
-rw-------. 1 ilmostro 31 Aug 21 03:02 shell
-rw-------. 1 ilmostro 0 Aug 21 03:02 ssldomain
-rw-r--r--. 1 ilmostro 39 Aug 21 03:02 version
По большей части, многие каталоги и / или файлы можно игнорировать, если вы не хотите импортировать все; т.е. cron
, почта, использование полосы пропускания и т. д.
Возможно, основные элементы в большинстве сценариев относятся к базе данных, DNS и apache. Поэтому следует сосредоточить внимание на следующих файлах / папках:
drwx------. 2 26 Aug 21 03:02 dnszones
drwx------. 4 33 Aug 21 03:02 domainkeys
drwx--x--x. 19 4.0K Aug 21 03:02 homedir
drwx------. 2 4.0K Aug 21 03:02 mysql
drwx------. 2 4.0K Aug 21 03:02 sslcerts
drwx------. 2 4.0K Aug 21 03:02 sslkeys
drwx------. 2 96 Aug 21 03:02 userdata
-rw-------. 1 1.5K Aug 30 06:09 mysql.sql
-rw-------. 1 18 Aug 21 03:02 sds
-rw-------. 1 48 Aug 21 03:02 sds2
В данные пользователя каталог сделал это там, потому что в нем есть некоторые полезные справочные элементы для конфигурации; аналогичные причины для SDS и sds2 файлы.
Затем создайте конкретную базу данных. Повторите эти действия для дополнительных баз данных в зависимости от доменов, файлов и баз данных. Файл dbname.create также создает необходимых пользователей и дает им необходимые привилегии в базах данных.
# mysql < mysql/yourdomain_database.create
Импортируйте базу данных так:
# mysql yourdomain_database < mysql/yourdomain_database.sql
# cp -v dnszones/*.db /var/named/
Копирование файлов зоны DNS на ваш DNS-сервер, если применимо. Обязательно настройте необходимую конфигурацию DNS-сервера, чтобы включить файлы зоны; например/etc/named.conf
.
Затем сосредоточьтесь на остальном, что связано с apache, которое будет находиться в homedir/public_html/
(хотя может быть прямо в /homedir/
в последних версиях cpanel). В качестве примера можно использовать следующую установку WordPress с папкой в поддомен:
homedir/public_html/
├── cgi-bin
├── configurations.json
├── css
├── font-awesome
├── fonts
├── img
├── index.php
├── js
├── LICENSE
├── license.txt
├── subdomain.yourdomainname.com
├── readme.html
├── sitemap.xml
├── strac-yourdomainname.com-phpindex
├── test.php
├── wp-activate.php
├── wp-admin
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config.php
├── wp-content
├── wp-cron.php
├── wp-includes
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
Скопируйте содержимое в DocumentRoot и обновите файлы конфигурации apache любыми параметрами VirtualHost:
cp -r homedir/public_html/* /var/www/html/
vim /etc/httpd/httpd.conf
Возможно, вам также придется внести необходимые изменения в версии и конфигурацию PHP, apache и / или mysql. Постарайтесь, чтобы версии и параметры были как можно ближе к версии cpainl-сервера.
Конечно, невозможно предсказать все, что вам нужно знать, но вот небольшой контрольный список, если у вас не было большого опыта работы с современными дистрибутивами Linux.
Выберите, какой дистрибутив вы хотите, чтобы ваш сервер работал. Производная Debian, производная Redhat или что-то еще?
Разберитесь в SSH, чтобы вы могли попасть на свой сервер.
Изучите инструменты управления пакетами вашего дистрибутива, чтобы вы могли их устанавливать.
Установите нужные вам вещи через менеджер пакетов ... например, apache, php, mysql.
Настройте то, что вы установили. Поймите, что вам нужно больше модулей для apache и php. Установите их.
Узнайте, как (повторно) запустить системные службы. Перезапустите apache, добавив кучу необходимых модулей apache и php и перенастроив их.
Узнайте, как настроить виртуальные хосты (vhosts) на apache.
Сервис Amazon AWS - это хороший способ быстро настроить виртуальные машины и без особых проблем протестировать их, и он масштабируется до одного из лучших хостинговых решений, которые я когда-либо видел. Вы можете подумать об этом, прежде чем рассматривать другие варианты хостинга.
Эти ребята тоже хороши: http://www.gplhost.com/ ... особенно если вы ищете что-то менее корпоративное или хотите быть уверены, что за услугами стоят настоящие люди. Это небольшая компания, в которой работает всего несколько сотрудников, но им каким-то образом удается иметь офисы по всему миру и отвечать на звонки в 3 часа ночи, когда мы звоним им с глупыми вопросами.