Я хочу перенести свой веб-сайт (скажем, www.mydomain.com), который в настоящее время работает на общем хостинге, на мой VPS-сервер, который я недавно купил.
Я создал домен в DirectAdmin моего VPS-сервера с тем же именем, что и доменное имя, которое в настоящее время работает на общем хостинге (www.mydomain.com). Теперь я загрузил веб-сайт и базу данных в этот домен на моем VPS, и он работает правильно.
Теперь мне нужно только сменить DNS с моего текущего виртуального хостинга на этот VPS. Но вот здесь меня это немного сбивает с толку.
Допустим, сервер VPS имеет IP-адрес 12.12.12.12. Тогда домен, который я создал через DirectAdmin, будет запущен 12.12.12.12/~admin/. Я уже создал DNS-запись (server.mydomain.com) на моем общем хостинге, которая указывает на IP-адрес сервера. Но когда я пытаюсь достичь этого рекорда, он не показывает мне веб-сайт, а только «Apache работает нормально».
Теперь, что мне нужно изменить в настройках DNS, чтобы домен указывал на веб-сайт, работающий на моем сервере VPS (12.12.12.12/~admin/)?
Сделав запись A для www.mydomain.com, указывающую на 12.12.12.12, вы только достигли цели - заставить веб-запросы доходить до сервера. Сервер должен быть настроен для приема запросов к хосту: www.mydomain.com и их обслуживания из вашей папки ~ / admin.
На самом деле, есть (по крайней мере) два способа добиться этого.
РЕДАКТИРОВАТЬ: Вот как вы можете изменить docroot - он уже был задан в stackoverflow: https://stackoverflow.com/q/5891802/708198
Обычно на apache это можно сделать так. Пожалуйста, не копируйте / вставляйте это вслепую, я быстро сделал это со своего собственного веб-сервера:
Установите vhost по умолчанию:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@mydomain.com
DocumentRoot "/path/to/docroot"
ServerName hostname.mydomain.com
<Directory "/path/to/docroot">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/apache/httpd-default-error.log"
CustomLog "/var/log/apache/httpd-default-access.log" combined
</VirtualHost>
с последующим
<Virtualhost *:80>
ServerAdmin webmaster@mydomain.com
DocumentRoot "/path/to/webapp/admin/"
ServerName www.mydomain.com
ServerAlias mydomain.com
<Directory "/path/to/webapp/admin/">
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymlinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
ErrorLog /var/log/www.mydomain.com/httpd-error.log
CustomLog /var/log/www.mydomain.com/httpd-access.log combined
</Virtualhost>