问候,请原谅,如果这是一个非常基本的问题。
目前我已经从Godaddy.com买了一个域名(crazywebsite.com),我在Site5.com有一个非托pipe的VPS。
我在我的Debian机器 Site5.com中build立了一个LAMP栈 (Debian,Apache2,MySQL,PHP Laravel),目前我有我的IP和网站外观,可以像这样访问:
292.168.0.1./website (Just an example IP) 292.168.0.1./forum
我如何实现以下目标?
crazywebsite.com => 292.168.0.1./website
forum.crazywebsite.com => 292.168.0.1./forum
所以当你写下我买的域名时,你会看到网站的内容(当然不是通过IP链接访问它)。
任何想法或链接如何做到这一点?
添加了以下设置:
在/ etc / apache2的/网站可用/默认
至:
# website <VirtualHost *:80> ServerName crazywebsite.com ServerAlias crazywebsite.com DocumentRoot /var/www/website </VirtualHost> <VirtualHost *:80> ServerName www.crazywebsite.com ServerAlias www.crazywebsite.com DocumentRoot /var/www/website </VirtualHost> # forum <VirtualHost *:80> ServerName forum.crazywebsite.com ServerAlias forum.crazywebsite.com DocumentRoot /var/www/forum </VirtualHost> <VirtualHost *:80> ServerName www.forum.crazywebsite.com ServerAlias www.forum.crazywebsite.com DocumentRoot /var/www/forum </VirtualHost>
Thahk你提前!
正如@Sven所build议的那样,我在GoDaddy.com做了我的Alogging。 任何人都可以证实这是正确的? 我为名称服务器创build了两个域NS1和NS2(只是在任何情况下)和一个“推荐”,我将需要作为一个子域。
我是否需要在我的Debian服务器上执行任何其他设置(比如BIND9等)?或者我只需要等到DNS更新。
这些设置已经工作。 现在唯一的问题是,我不能指向http://crazywebsite.com到123.456.789.000 / mywebsite。 相反,它总是显示根文件夹“/”。 有什么build议么?
您需要添加DNSlogging
到GoDaddy控制中心的DNS区域,例如使用crazywebsite.com的A
logging和其他所有内容的CNAME
logging,指向crazywebsite.com
(但是四个A
logging也可以)。
而不是每个网站( /website
和/forum
)添加两个虚拟主机,您应该执行以下操作:
<VirtualHost *:80> ServerName crazywebsite.com ServerAlias www.crazywebsite.com DocumentRoot /var/www/website </VirtualHost> # forum <VirtualHost *:80> ServerName forum.crazywebsite.com ServerAlias www.forum.crazywebsite.com DocumentRoot /var/www/forum </VirtualHost>
Svenbuild议添加“论坛”和“www”logging,指向你的Site5 VPS。 你需要这些,而不是“ns1”和“ns2” – GoDaddy目前是你的名字服务器,所以不用担心做你自己的DNS。
Svenbuild议的Apacheconfiguration是完全足够的。 你几乎可以肯定已经在你的ports.conf中:
NameVirtualHost *:80
我已经解决了我的问题,这是每个需要它的人的解决scheme:
首先,您需要在您的Debian机器中绑定您的域名。 这样你的Debian服务器就知道它需要响应这个域。 打开并编辑/ etc / hosts文件到以下内容:
127.0.0.1 localhost.localdomain localhost 123.456.789.000 crazywebsite.com # of course, in stead of 123.456.789.000 you type the IP of your Debian server
然后你进入你的apache设置并设置你的域和子域虚拟主机。 通过这样做,您将能够将每个域指向服务器中的确切文件夹所指向的位置。 例:
crazywebsite.com => 292.168.0.1./website forum.crazywebsite.com => 292.168.0.1./forum
要做到这一点,你需要打开文件/ etc / apache2 / sites-available / default并使用以下命令编辑它:
# This is the default content of the file <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost> # END: Default content of the file # Your custom domain and subdomain content below this line # website <VirtualHost *:80> ServerName crazywebsite.com ServerAlias www.crazywebsite.com DocumentRoot /var/www/website </VirtualHost> # forum <VirtualHost *:80> ServerName forum.crazywebsite.com ServerAlias www.forum.crazywebsite.com DocumentRoot /var/www/forum </VirtualHost>
这是我在完成所有这些步骤之后所得到的一个问题。 只有我的www.crazywebsite.com指向/ var / www / website ,但是crazywebite.com版本仍然只指向/ var / www 。
解决scheme是转到以下目录:
在/ var / WWW /
并创build一个.htacces的文件,当你input“ crazywebsite.com ”和“ http://www.crazywebsite.com ”来redirect到你的/ var / www / website文件夹的时候, ServerName crazywebsite.com ServerAlias http://www.crazywebsite.com UseCanonicalName On
RewriteEngine On RewriteCond %{HTTP_HOST} !^crazywebsite\.com [NC] RewriteCond %{HTTP_HOST} !^$ RewriteRule ^/(.*) http://crazywebsite.com/$1 [L,R]