我想把我的网站(比如说www.mydomain.com) (目前运行在共享主机上)转移到我最近购买的VPS服务器上。
我在VPS服务器的DirectAdmin中创建了一个域,其名称与当前运行在共享主机(www.mydomain.com)上的域名相同。现在,我将网站和数据库上传到VPS上的这个域,它正在正常工作。
现在,我只需要将DNS从我当前共享的主机更改为这个VPS。但这让我有点困惑。
假设VPS服务器的IP地址为12.12.12.12。然后,我通过DirectAdmin创建的域在12.12.12/~admin/上运行。我已经在我的共享主机上创建了一个DNS A记录(server.mydomain.com),它指向服务器的IP地址。但是当我试图达到这一记录时,它并没有显示给我这个网站,而只是“Apache正常工作”。
现在,我需要更改DNS设置以使域指向运行在VPS服务器上的网站(12.12.12.12/~admin/)?
发布于 2013-11-23 13:58:59
通过为www.mydomain.com创建一个指向12.12.12.12的A记录,您只实现了使web请求到达服务器的目标。服务器需要配置为将请求接收到主机: www.mydomain.com,并从您的~/admin文件夹中为它们提供服务。
实际上,你(至少)有两种方法可以做到这一点。
编辑:下面是如何更改docroot --已经在stackoverflow:https://stackoverflow.com/q/5891802/708198中被问到了
通常,在apache上您可以这样做。请不要盲目地复制/粘贴这个,我很快从我自己的own服务器上画了这个:
设置默认的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>https://serverfault.com/questions/556978
复制相似问题