PHP 虚拟主机配置_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > PHP 虚拟主机配置

PHP 虚拟主机配置

 2018/3/23 23:47:12  青春..荒唐  程序员俱乐部  我要评论(0)
  • 摘要:①创建站点目录②开启httpd-vhosts.conf配置功能找到Apache的\conf目录下的httpd.conf文件,打开它,找到下面这两行:#Virtualhosts#Includeconf/extra/httpd-vhosts.conf把它改成下面这样:#VirtualhostsIncludeconf/extra/httpd-vhosts.conf意思是启用虚拟主机的设置文件httpd-vhosts.conf,虚拟主机的设置都在这个文件下设置③配置Apache虚拟主机的配置文件
  • 标签:PHP 配置 虚拟主机 主机

?

①创建站点目录

开启httpd-vhosts.conf配置功能

? ? 找到Apache的\conf目录下的httpd.conf文件,打开它,找到下面这两行:

class="php" name="code"># Virtual hosts
#Include conf/extra/httpd-vhosts.conf
把它改成下面这样:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

? ? 意思是启用虚拟主机的设置文件httpd-vhosts.conf,虚拟主机的设置都在这个文件下设置

③配置Apache虚拟主机的配置文件,创建一个虚拟主机;

? ? 文件位于Apache目录下,conf/extra/httpd-vhosts,打开配置文件后,复制一段之前的站点配置代码---虚拟主机配置,粘贴到最后

#自定义虚拟主机
<VirtualHost *:80>
    #配置站点管理员邮箱,当站点报500服务器错误时时,会在页面提示错误信息,
      #并列出管理员邮箱
    ServerAdmin webmaster@dummy-host2.example.com
    #站点文档根目录
    DocumentRoot "C:\site"
    #站点绑定的域名
    ServerName www.1006.com
    #站点别名ServerAlias 1006.com(一般是不带www的域名)
    #错误日志的存储位置,logs目录在Apache目录下,不在站点根目录
    ErrorLog "logs/1006-error.log"
    #正常访问日志的存储位置,也在Apache目录下。最后的common是日志的记录规则名称,
      #在Apache的组配置文件httpd.conf定义记录规则
    CustomLog "logs/1006-access.log" common
</VirtualHost>

?④重启Apache

⑤修改hosts文件,将配置文件里声明的2个域名进行绑定解析

? ? hosts文件位置:C:\Windows\System32\drivers\etc\hosts,快捷操作win+R弹出运行对话框,输drivers即可找到etc目录

? ? 编辑hosts:输入127.0.0.1 www.1006.com 1006.com(可以将两个域名写在一行,站点域名写在前,站点别名写在后面)

⑥检验

? ?在cmd里通过ping命令来测试域名是否绑定成功

? ?检验IP是否指向本机cdm输入:ping ip

? ?ping 是Windows系列自带的一个可执行命令。利用它可以检查网络是否能够连通,用好它可以很好地帮助我们分析判定网络故障。应用格式:Ping IP地址

现在浏览器输入自定义的ip,便会看到index of /,表示列出站点目录。

此时说明虚拟主机配置完成。

⑦将代码文件复制到站点目录

? ?复制ThinkPHP目录和index.php入口文件到站点根目录。通过浏览器进行访问新域名,此时会看到欢迎使用ThinkPHP!界面

? ?并且会在站点目录里自动创建Application目录,因为入口文件index.php里定义了应用目录,所以引文件时不需要引入Application目录

// 定义应用目录,后期自动生成的文件都会放到里面
define('APP_PATH','./Application/');



?

?

?分享下其他文章:

先说配置虚拟主机的流程:

1.先打开httpd.conf文件,打开httpd-vhosts.conf

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

2.然后打开httpd-vhosts.conf文件,配置一个虚拟主机

<VirtualHost *:80>
    DocumentRoot "D:/amp/www/wechat"
    ServerName www.wechat.com
</VirtualHost>

3.打开hosts文件,添加域名

127.0.0.1        www.wechat.com

4.重启Apache,这时虚拟主机的域名www.wechat.com可以正常访问,

 但是我的localhost就不能访问了。报错如下:

解决过程:

我的思路是,添加一个名为localhost的虚拟主机不就可以了?

1.打开httpd-vhosts.conf文件,配置一个名为localhost的虚拟主机:

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "D:/amp/www"
</VirtualHost>

2.打开hosts文件,添加域名

注意:这一步,做或者不做,都没有影响,亲测通过。

#127.0.0.1        localhost

3.重启Apache,期待的结果并没有出现,哎,都累得半死了,还是不能访问localhost,虽然其他虚拟域名都可以正常访问,

?可是我就是想鱼和熊掌兼得,继续查找问题

?

问题解决:

最后我比对了我原来的配置代码,发现,在httpd.conf文件中有一行代码是需要注释掉的

#ServerName localhost:80

就是这一行代码,把我折腾的够呛,把 ServerName 这一行代码注释掉就可以了

也许你的httpd.conf文件中并不是localhost:80 这个值,可能是 ?ServerName ?a.com:80 ; 都一样,直接注释掉

以后无论开启或者关闭虚拟主机,localhost都可以正常访问。

?

?

其他文章2:

首先,我们要明白为什么访问localhost就可以访问到我们的apache主页

解析域名的时候,首先是从本地的hosts文件开始的

如果查不到,才会去DNS服务器查询。

解析:

在Windows操作系统C:\WINDOWS\system32\drivers\etc目录下的hosts文件,存放着一些主机名和IP地址的映射表。通常,客户机需要进行域名解析时,系统会先读取该文件,在其中查找对应域名的IP地址。若查找失败,则将域名解析任务提交给该主机所配置的首选DNS服务器进行查询。默认情况下,该文件必须包含的一条“127.0.0.1 localhost”记录。

如果你在这里面写一行:127.0.0.1 www.baidu.com

百度你是肯定上不了。因为访问的是你自己的机器。

hosts 就是一个映射(域名和IP的对应,localhost也可以说是一个域名) localhost -> 127.0.0.1?

找到C:\WINDOWS\system32\drivers\etc\hosts ,修改如下

不多解释,这就是为什么计算机认识localhost的原因。

?

.

  • 大小: 13.2 KB
  • 查看图片附件
上一篇: 编程类学习资料整合,更多干货 下一篇: 没有下一篇了!
发表评论
用户名: 匿名