apache 二级域名设置完整步骤

来源:互联网 发布:杭州小知科技 知乎 编辑:程序博客网 时间:2024/05/01 19:03

*不想看我废话,请直接拉到 结果 处。*

起因:

2015年8月初,学习了一段时间前端,于是想自己做一个网站把之前学习的内容,发布到网上。

随着网页发布越来越多,子目录变多,想清晰的分辨那个项目,变得越来越麻烦。

还有就是想把每个目录功能清晰分开。

想我和我女朋友一人一个二级域名指向每个人独立的文件夹。

过程:

由于上面的问题我去搜索二级域名指向二级目录,但作为对linux和apache完全不熟悉的我来说这似乎有些困难(主要还是英语太烂...)。

经过搜索最终用一种不太好的方法实现了不同域名指向不同目录,但是完全不是二级域名能够绑定到子目录。效果很差。

先看一下当时找到的代码


这个其实就是用JavaScript获取到当前访问地址,做了个判断,跳到不同目录。

先看一下首页效果


看这里没问题,然后咱们再看一下它的子目录


发现子目录网址路径,还必须从这个网站目录开始,这样网址就会很长。

相当于也没有和这个项目的目录绑定在一起,而是做了一个跳转。

由于当时找了好多都没解决,就暂时先这样用了。

心里一直觉得这样不完美,想弄好它。于是隔了一个多月又去寻找新的方法。

找到了下面代码


oh my god 

你会发现这和上面那个方法没什么大区别啊,只是JavaScript代码,变成了PHP代码。

哎~ 真是要疯了

虽然还没解决但是最起码,能通过JavaScript和PHP进行判断跳转了。

于是这件事情就搁置一边了。

结果:

直到最近,新换了个工作,领导让我搭建个环境。忙了两天,中午把环境都弄好了。这个时候对linux服务器有了一些了解,想起了之前二级域名的问题,于是又上网搜了一下资料。终于找到了解决办法(以前在windows上也配置过怎么到linux上就不会了呢)。

准备:前提你要绑定的二级域名要解析到当前服务器上。

1、

修改apache http.conf或者httpd-vhosts.conf文件,

如果后者需要先检查下http.conf文件的Include "conf/extra/httpd-vhosts.conf" 是否打开了。

如果打开了相当于引入了conf/extra/httpd-vhosts.conf文件,

而conf/extra/httpd-vhosts.conf这个文件中为Include /alidata/server/httpd/conf/vhosts/*.conf

即引入了 vhosts 文件下下的所有 conf类型的文件(即所有配置文件)

2、

conf文件增加内容如下:

<VirtualHost *:80>        ServerAdmin itdream6@163.com       DocumentRoot /alidata/www/51growup/zmz        ServerName zmz.51growup.com        ServerAlias zmz.51growup.com        ErrorLog "/alidata/log/httpd/zmz.51growup-error.log"        CustomLog "/alidata/log/httpd/zmz.51growup.log" common</VirtualHost>
各个参数含义:

ServerAdmin  管理员邮箱

DocumentRoot  指向服务器子目录路径

ServerName  域名别名,可以设置多个别名同时指向当前目录,也可不填别名

ErrorLog   错误日志保存位置

CustomLog  访问日志保存位置

3、

配置好了,赶快去访问网页看一下,怎么没有效果。。。。

不要着急,配置好记得 重启一下 apache

这个时候再去访问就 OK了


总结:通过以上简单的三步,就把二级域名指向了子目录。不会的时候觉得很难,会配置之后其实感觉简单配置还是简单的。


2 0