wamp 默认是在安装目录的 www 目录下访问项目,但是这样很不方便,我们可以自己指定网站目录,并添加虚拟域名方便输入
想要达到的效果:
我有一个 store 项目,我不想在 wamp 安装目录下的 www 目录下面存放我的项目,我准备把 store 项目放在 D 盘的 project 目录里,不仅是 store 项目,其他的项目我也准备以后都放在 peoject 目录里。
当我在地址栏输入 store.com 时,就可以访问到我的项目。
1. 配置 httpd.conf 文件
使 httpd-vhosts.conf 文件可用
左键点击任务栏中的 wamp 图标
依次选择
Apache - httpd.conf
打开 httpd.conf 文件后,搜索下面这行代码
Include conf/extra/httpd-vhosts.conf
确认该行代码前是否有 #,如果添加了 #,这行代码则被注释,我们这里需要把# 去掉。
修改项目路径
ctrl + f 搜索 documentroot,修改下面两行代码
DocumentRoot "你想修改的项目根路径"
<Directory "你想修改的项目根路径">
如,我准备把项目都统一放在 D 盘的 project 目录里,我就应该这样写
DocumentRoot "D:/project"
<Directory "D:/project">
2. 配置 httpd-vhosts.conf 文件
依次选择
Apache - httpd-vhosts.conf
打开文件后,会发现里面已经添加了一条信息
# Virtual Hosts
#
<VirtualHost *:80>
#设置的虚拟域名
ServerName localhost
#别名
ServerAlias localhost
#项目地址
DocumentRoot "${INSTALL_DIR}/www"
#项目地址
<Directory "${INSTALL_DIR}/www">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
意思是当我们在浏览器地址栏输入 localhost 时,会访问到 wamp 软件安装目录下的 www 目录。
我们在这段代码下面添加上我们需要添加的其他虚拟域名
<VirtualHost *:80>
ServerName store.com
DocumentRoot "D:/project/store/public"
<Directory "D:/project/store/public">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
我设置的虚拟域名是store.com,对应的项目目录是 D 盘的 project/store/public 作为入口文件(我用的是 thinkphp 框架,这个框架默认把 public 里的 index.php 作为入口文件),当我在地址栏输入 store.com 的时候,wamp 就会去载入 D:/project/store/public 而不是 wamp 安装目录下的 www 目录里的文件。
保存并关闭这个文件。
但是这里并没有完,还需要进行其他的设置。
配置 hosts 文件
打开系统的 hosts 文件
文件路径以 windows 系统为例(其他操作系统请百度)
C:\Windows\System32\drivers\etc
打开文件后,在内容的最后添加一条
127.0.0.1 store.com
添加好后,保存并关闭 hosts 文件。
最后一步,左键点击任务栏上 wamp 软件图标 – 重新启动所有服务
完毕!