apache配置域名指向

<VirtualHost *:80>
ServerAdmin [email protected] ——管理员邮箱(可以随便写一个)
DocumentRoot "/home/phpok-com" ——网站目录
ServerName example.com —— 要绑定的域名
ServerAlias www.example.com ——要绑定的别名,如果有多个别名就用英文逗号隔开
CustomLog  logs/example.com_custom_log——用户日志格式(这一行也可以为空)
ErrorLog logs/example.com_error_log ——错误日志(也可以为空)
</VirtualHost>

步骤:
1.修改httpd.conf
把#Include conf/extra/httpd-vhosts.conf前面的#去掉,意思是让httpd.conf文件包含httpd-vhosts.conf这个配置文件,这是apache的配置模块化的一个表现,这里不多说。

寻找httpd.conf中的ServerName,如果ServerName的设置不是域名 www.abc1.com的话,那么改为ServerName www.abc1.com,如过你要用ssl之类的东西,那么改为ServerName www.abc1.com:80,就是加了个端口。

2.修改httpd-vhosts.conf

添加如下代码(有些可能文件里面就有,改一下就可以了):

NameVirtualHost *

<VirtualHost *>
    DocumentRoot "C:/aic"
    ServerName www.abc1.com
    ServerAlias abc1.com *.abc1.com
</VirtualHost>

<VirtualHost *>
    DocumentRoot "c:/aic/mybbonline"
    ServerName www.efg2.com
    ServerAlias efg2.com *.efg2.com
</VirtualHost>

值得注意的是,VirtualHost是有顺序的,排在最前的VirtualHost的我们默认的网站域名,其中的DocumentRoot和ServerName都必须与httpd.conf中的一样,包括端口。

DocumentRoot是虚拟主机的路径

而ServerAlias是域名的别名,配置了这个,那么一些二级域名就都可以进行虚拟主机解析了。如*.efg2.com就可以代表bbs.efg2.com或news.efg2.com等。

-----------------------------------------------------------------

虚拟主机的一般形式诸如(extra/httpd-vhosts.conf):

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.domain.tld
ServerAlias domain.tld *.domain.tld
DocumentRoot /www/domain
</VirtualHost>

<VirtualHost *:80>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>

这是apache2.2中文参考手册中的示例。一般的咱们这样配置在以前版本是没有问题的。但是现在就不一样了。当访问某个虚拟主机下的页面的时候会出现类似:“403(禁止访问),你无法查看该网页…”的错误。很明显这是拒绝访问的提示。按照经验很容易找到(httpd.conf)下面的内容:

<Directory />

Options FollowSymLinks

AllowOverride None

Order deny,allow

//先拒绝后允许Deny from all
//拒绝所有的访问</Directory>

这一个部分就是对目录进行访问控制的,很显然这设置得很严格,因此,我们必须手动加入虚拟机目录的权限控制块,才可以让用户正常访问虚拟机的目录及页面文件。有两个地方可以加入虚拟目录访问权限控制块:主配置文件httpd.conf和虚拟机配置文件httpd-vhost.conf,毫无疑问我们选择虚拟机配置文件,主要是维护起来更方便。那么我们把目录访问控制块插入到虚拟机配置文件,这样我们的虚拟主机的配置文件写法就类似这样:

<VirtualHost *:80>

DocumentRoot "E:/web"
ServerName www.domain.tld
<Directory "E:/web">           
//插入开始
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>                   
//插入结束</VirtualHost>

这样配置完成后,我们使用apachectl命令及相关参数来检测配置文件是否有问题。确认无误后进行,重新启动apache服务。然后使用浏览器进行访问测试(呵呵!又是废话了!)。如果还不行的话,那就检查你的页面文件的权限设置是否过高,导致的不能访问了!当然这种情况在windows下比较少见,一般可能出现在linux环境下。

时间: 2024-10-11 00:39:20

apache配置域名指向的相关文章

Apache配置域名

在WIN下安装APACHE配置虚拟目录和UNIN下基本是一样的就是修改httpd.conf1:单个IP对应单个域名例如:www.phpunion.com对应192.168.1.1www.feelone.net对应192.168.1.2在httpd.conf中加入如下指令<VirtualHost 192.168.1.1>    #对应域名所指向的IPDocumentRoot "c:/web/php"   #www.phpunion.com要指向的目录,注意一定要有"

Apache配置域名301跳转

配置域名301跳转 在有两个域名的情况下我们需要设置一个主域名(将次域名跳转到主域名下),操作命令如下: vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 在 # CustomLog "logs/dummy-host.example.com-access_log" common下面一行添加如下: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HO

Apache配置域名跳转、日志切割、静态缓存、防盗链、访问控制

·/usr/local/apache2/bin/apachectl  -M:查看安装了哪些模块 ·/usr/local/apache/bin/apachectl   -V:查看使用的模式 ·/usr/local/apache2/bin/apachectl  -t:检查语法错误 ·/usr/local/apache2/bin/apachectl  -l:查看安装的库文件 ·/usr/local/apache2/bin/apachectl graceful:重新加载配置 ·/usr/local/ap

LAMP(3)--apache配置域名跳转

★需求实现 之前搭建discuz时候使用的域名为www.caoyue111.com 现在我们要求实现访问域名www.hera111.com 时跳转到www.caoyue111.com ★配置步骤 我们只需在相应的虚拟主机中加入以下内容 vim /usr/local/apache2/conf/extra/httpd-vhosts.conf <IfModule mod_rewrite.c>   <== 打开rewrite.c模块(可用apachectl -M查看有无此模块)   Rewrit

apache配置-域名跳转、日志切割、静态缓存、防盗链

·/usr/local/apache2/bin/apachectl -M:查看安装了哪些模块     ·/usr/local/apache2/bin/apachectl -t:检查语法错误 ·/usr/local/apache2/bin/apachectl -l:查看安装的库文件 ·/usr/local/apache2/bin/apachectl graceful:重新加载配置·/usr/local/apache2/htcocs         主页存放目录 ·/usr/local/apache

Windows下Apache配置域名

1.打开httpd.conf 找到“Include conf/extra/httpd-vhosts.conf”这一行,取消前面的#号注释并保存 2.修改httpd-vhosts.conf文件 进入apache安装目录下的conf/extra文件夹,打开httpd-vhosts.conf文件, 2.1.可以将文件内容清空 2.2.也可以对文件内所有内容进行加#号注释(2.1和2.2二选一执行) 2.3.在文件中加入 NameVirtualHost *:80 <VirtualHost *:80>

Apache配置域名跳转

需求:要把访问域名 www.ppt.com(或www.ppt1.com) 的域名转发到 www.tpp.com 上实现: [[email protected] abc]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf <IfModule mod_rewrite.c>    RewriteEngine on    RewriteCond %{HTTP_HOST} ^www.ppt.com$    RewriteRule ^(.*)$ ht

Apache 配置域名跳转

域名跳转需要在虚拟主机配置中添加别名和一个 rewrite 模块,如下,配置当访问 www.aaa.com 时跳转到 www.test.com [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf <VirtualHost *:80> DocumentRoot "/data/www" ServerName www.test.com ServerAlias www.aaa.com

win7+Apache 设置域名指向本地文件夹

比如我想在浏览器地址栏输入 www.bnzoo.com 打开 D:/www 该怎么实现. 测试系统:win7旗舰版+Apache 步骤: 1.打开文件 C:\Windows\System32\drivers\etc\hosts,在文件末尾加上下面代码: 127.0.0.1 www.bnzoo.com 2.打开Apache的配置文件 httpd.conf (应该在Apache目录下的 conf 文件夹里),并在末尾加上如下代码: <virtualHost *:80> DocumentRoot &