我们有时候从网上下载下来的php源码很多都是应用在网站根目录下的,而我们又想在本地先测试一遍确定没有问题了再上传空间,但一换到子目录下的时候因为路径问题,使得许多图片、内容都无法显示。
这个时候我们就需要营造一个根目录的环境去加载这些php源码,这就需要用到虚拟主机了。也就是将项目的子目录映射到一个域名中,当访问这个域名的时候相当于访问这个项目了。这样既能在本地运行项目,而且项目直接打包上传空间也能直接用了。
工具/原料
- Apache服务器
方法/步骤
-
1.打开Apache的配置文件 httpd.conf 查看虚拟主机是否已经打开
找到下面这两句,要开启虚拟主机,先要将下面的第二句前面的#号去掉
# Virtual hosts 这句前面的#不用去
#Include conf/extra/httpd-vhosts.conf
-
2.打开apache\conf\extra\httpd-vhosts.conf
添加如下代码:
<VirtualHost *:80>
DocumentRoot "D:/www/cms"
ServerName m.local.cc
ErrorLog "logs/m.local.cc-error.log"
CustomLog "logs/m.local.cc-access.log" common
<Directory "D:/www/cms">
Options Indexes FollowSymLinks
DirectoryIndex index.html index.php
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我稍微讲一下上面代码需要改动的地方:
<VirtualHost *:80> 这里是访问端口,如果你的是其他端口请自行修改
DocumentRoot "D:/www/cms" 这个是项目的具体路径,也就是你要开启虚拟主机的项目
ServerName m.local.cc 这个(m.local.cc)是你要访问这个项目的网址
ErrorLog "logs/m.local.cc-error.log" 指定错误日志保存的文件
<Directory "D:/www/cms"> 这里要保持和项目路径一样
DirectoryIndex index.html index.php 定义索引,也就是当输入项目名,但是没有输入指定的访问文件的时候就默认访问这里的( index.html 或index.php 如果存在的话)
-
3
3.打开C:\Windows\System32\drivers\etc\hosts文件
配置本地域名指向的ip,在该文件的最下面的空白处添加(这里的网址就是你在httpd.conf中写的网址一定要对应):
127.0.0.1 m.local.cc
经此,整个本地虚拟主机就配置完成了,然后重启一下Apache服务器!这点很重要。