linux下配置apache多站点访问-小案例
一级域名(baidu.com)也叫作顶级域名,注册一级域名是需要付费的。
而二级域名(image.baidu.com)是一级域名的延伸,所以只要购买了一级域名,二级域名是可以任意配置的。
其实(www.baidu.com)也是二级域名,只是大家已经习惯使用www为前缀的二级域名作为网站的主域名而已。
通过DNS解析服务商,可以为每个二级域名绑定不同的主机IP,这样即使只有一个主域名也可以架设多个网站了。
如果你只有一台主机,并且要在上面建立多个项目,还得通过子域名的方式访问,那么你需要配置 Apache 才行。
(下面这一小段大牛就不用看了,班门弄斧了。)
简单说,就是你注册购买了一个域名(www.changnew.top)后,并且解析到了你的服务器ip。但是,你想要在这台服务器上,再放置一个项目,然后通过(video.changnew.top)访问,这就是二级域名的来来历!网上不少教程,但是有些很啰嗦,有些甚至是错误的。今天,终于搞出来了,特别写此篇记录和分享给大家。
---------------------------闲话少说,开始吧!-----------------------------
首先,登陆我的阿里云账号,把我的二级域名解析到我的这台服务器上。注意,一定要和主域名一样的IP。
添加完了后,测试下成功了没。打开电脑的命令行ping一下域名,如果两个域名访问的ip一样的,那就第一步成功了!
接下来,就是重点了。现在,连个域名都可以指向自己的服务器了。那么,服务器需要怎么区分访问的是哪个项目呢?
打开服务器命令行,找到httpd.conf文件,vi编辑一下,找到这行代码:
# Virtual hosts # Include conf/extra/httpd-vhosts.conf
把Include前面的#注释去掉,然后找到httpd-vhosts.conf文件,vi编辑下。
复制一份下面这段代码(具体路径肯定不一样,以自己的为准),放到它的后面即可。
<VirtualHost *:80> ServerAdmin webmaster@example.com #php_admin_value open_basedir "/home/wwwroot/default:/tmp/:/var/tmp/:/proc/" DocumentRoot "/home/wwwroot/default" ServerName www.lnmp.org ErrorLog "/home/wwwlogs/IP-error_log" CustomLog "/home/wwwlogs/IP-access_log" combined <Directory "/home/wwwroot/default"> SetOutputFilter DEFLATE Options FollowSymLinks AllowOverride All Order allow,deny Allow from all DirectoryIndex index.html index.php </Directory> </virtualHost>
在刚复制的这份代码,修改下面红色部分即可。
<VirtualHost *:80> ServerAdmin webmaster@example.com #php_admin_value open_basedir "/home/wwwroot/default:/tmp/:/var/tmp/:/proc/" DocumentRoot "/home/wwwroot/default/video"(二级域名指向的项目文件夹或文件) ServerName video.changnew.top(自己的二级域名) ErrorLog "/home/wwwlogs/IP-error_log" CustomLog "/home/wwwlogs/IP-access_log" combined <Directory "/home/wwwroot/default/video"> SetOutputFilter DEFLATE Options FollowSymLinks AllowOverride All Order allow,deny Allow from all DirectoryIndex index.html index.php </Directory> </VirtualHost>
重启apache后,在浏览器上访问即可!如果没成功,欢迎到我的博客留言:杰新博客!