ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

启动使用WampServer

2022-02-01 14:32:45  阅读:235  来源: 互联网

标签:httpd based name 启动 ServerName 端口 WampServer 使用 config


流程

  1. 客户端发起请求
  2. 请求发送到指定地址,被Apache监听到 1
  3. Apache 根据请求信息,找到最匹配的虚拟节点[^2]
  4. 找到虚拟节点,返回节点指定的资源
    virtualhost what
    httpd.config 和htttpd-vhost.config 的关系
    启动wamp

启动

每次电脑开机会自启动mysql.exe 占用了3306端口。当服务没开齐变黄图标。
1. 进入cmd 输入 netstat -ano 查看端口占用
2. 找到对应占用端口的PID,在任务管理器关了。
3. 或者直接在任务管理器搜索 mysql关了
当黄图标提示没 开全服务的时候,可以看看错误日志
数据库错误日志
php错误,遇到httpd的语法错误在这里提示配置出现语法错误点击这里看看

配置

可以写在这里

VirtualHost
<VirtualHost></VirtualHost>
带有描述虚拟节点的属性,描述虚拟节点功能,包裹资源地址(成为一个虚拟节点)
必备的2个内容节点:

  • ServerName (为啥必备,下面有说)
  • DocumentRoot(节点保存有资源地址)
<VirtualHost 127.0.0.1:80>
	ServerName xxx
	DocumentRoot "D:/xxx/xxx"
	<DocumentRoot "D:/xxx/xxx/">
		Options +Indexes +Includes +FollowSymLinks +MultiViews
		AllowOverride All
		Require local
	</DocumentRoot>
</VirtualHost>

标签可用具体属性,描述该节点功能,如(描述对文件夹的访问授权等) 和
细节:

  • 标签名,内容名大小写敏感,如VirtualHost,ServerName。虽然window路径大小写不敏感,但是实际系统内部也是区分大小写的
  • 文件路径应该是 ‘/’ ,而不是 ‘’ ,后者可能会被系统翻译成 escape 的意思
  • window 没有那么多IP地址。但是可以写两种。①cmd -> 输入ipconfig -> 找到192.168开头的IPV4地址。② 127.0.0.1:80,127.0.0.8:81 也是一个地址,意思是换个本机地址,换个端口号(端口需要被监听到,应用程序监听到具体端口,才能对到某端口的请求做出反应,注意httpd.config 中的Listen 指令)

*httpd.config与httpd-vhosts.config 的关系
httpd.config 中有2行:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
httpd.config 中引入了htttp-vhosts.config 语句,方便管理的意思

ip-based 和name-based
① ip-based
通过wampServer ,可以在一台window上运行多个站点。

您可以在电脑上运行多个WampServer实例,启动实例的命令中,可以指定不同的配置文件。

或者可以使用到ip-based,即:

运行一个WampServer实例,配置文件中指定2个不同ip Address 的 VirtualHost

比方说,127.0.0.1:80 和127.0.0.1:88 是2个IP地址。

② name-based
比方说,2个VirtualHost 是同一个IP地址,ServerName 分别是 a.com,b.com。在浏览器中输入这2个ServerName可以访问到各自VitualHost中指定的资源(但是同一个IP地址)。

这样管理一个IP地址就足够了

除了在httpd-vhosts.config 中写好虚拟节点外,还要配置一下电脑中的小DNS(C:\Windows\System32\drivers\etc\host)文件中配置下,具体ServerName 对应的IP地址

流程:

  1. 浏览器输入a.com
  2. 电脑中DNS 中 将a.com 映射到本机地址
  3. apache 监听到请求
  4. apache 根据请求头中的地址,筛选出一批匹配的VirtualHosts
  5. 再根据请求头中的HostName,再筛选出一批最匹配的vhosts,选里面的第一个
    请求头中有hostname,也有ipAddress

If a VirtualHost doesn’t specify a ServerName, a server name will be inherited from the base server configuration. If no server name was specified globally, one is detected at startup through reverse DNS resolution of the first listening address. In either case, this inherited server name will influence name-based virtual host resolution, so it is best to always explicitly list a ServerName in every name-based virtual host.
没有定义ServerName,就继承httpd.conf中的ServerName,httpd.conf中没有就找host文件中第一行映射,反获得hostName??



  1. Apache需要指定监听地址(端口)(ip+port),请求发给80端口,Apche才能获得这个请求
    写在httpd.conf 的监听指令:
    === Listen 0.0.0.0:80 ===
    === Listen [::]:80 ===
    监听80端口
    [^2] 有 ip-based,name-based的2种配置方法 ↩︎

标签:httpd,based,name,启动,ServerName,端口,WampServer,使用,config
来源: https://blog.csdn.net/ou_nvhai/article/details/122758913

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有