1:hosts 增加主机名
2:httpd.conf 开启 Include conf/extra/httpd-vhosts.conf 模块
3:配置 httpd_vhosts.conf 文件
<VirtualHost *:80>
#这个可以没有
#ServerAdmin..
# 文档根目录
DocumentRoot "设置虚拟主机根目录"
# 增加的虚拟主机域名
ServarName www.imsuperman.com
# 错误日志目录
ErrorLog "..."
#可以没有
#customLog "logs/dummy-host2.." com
mon
# 配置 rewrite 相关选项 (目录配置)
<Directory "设置虚拟主机根目录">
# 拒绝所有请求
#Deny from all
# 允许所有请求
Allow from all
# 是否列出所有目录(好比无index时phpnow默认会列出所有目录)最好禁用
# 这个选项在apache目录内的虚拟主机来说没用,要配置在apache的主目录之外 才会有效(不加就不会列出)
Options +Indexes
#是否启用 rewrite
Allowoverride All
</Directory>
</virtualHost>
下面是刚才测试后 OK 的代码
httpd.conf
127.0.0.1 www.imsuperman.com
httpd-vhosts.conf
<VirtualHost *>
DocumentRoot "d:/cache"
ServerName "www.imsuperman.com"
<Directory "d:/cache">
Allow from all
Allowoverride All
</Directory>
</VirtualHost>
我的虚拟主机目录建立在d 盘下 ,重启apache后 访问 www.imsuperman.com OK
注意:如果虚拟主机配置在 apache 的 htdocs 目录下(apache文档根目录)
此时 如果没有对 目录进行配置 (Directory ) 则他会采用 父目录的配置。
伪静态
.htaccess
# 启用 rewrite
RewriteEngine On
# 规则
RewriteRule contra\/(.*)\/action\/(.*)\/cssfile\/(.*)$ index.php?m=$1&a=$2&cssfile=$3