我只是想知道,当我们在我们的计算机上运行一个本地主机,例如xampp,并且我们在htdocs中放置了一个index.php时,服务器在运行服务器时如何获取这个文件?本地主机服务器如何获取php页面?
它使用GET吗?
我只是想知道,当我们在我们的计算机上运行一个本地主机,例如xampp,并且我们在htdocs中放置了一个index.php时,服务器在运行服务器时如何获取这个文件?本地主机服务器如何获取php页面?
它使用GET吗?
由于该文件与Web服务器位于同一个文件系统中,因此它使用其编程语言和操作系统的本地打开文件的方式。没有涉及HTTP GET。
您的浏览器使用HTTP GET,然后Web服务器读取硬盘上的文件,并在返回响应之前由apache mod_php解释它。
在本地主机上运行的Web服务器的运行方式与在其他某个主机上的运行方式相同。
如果您在您的PC上运行的地址为127.0.0.1:80的Web服务器,并且您使用Web浏览器连接到该URL,则与您在某个其他IP地址上连接到某个其他主机时相同。
我有我的电脑上运行的PHP和Javascript工作的WAMP。我将文件放到htdocs文件夹或子文件夹中,以便它们可用,但是当我访问它们时,我使用http://127.0.0.1/xxx.php
来访问php脚本xxx.php。
我也写过我自己的网络服务器作为练习,并使用相同的方法。
如果我运行MySQL,我几乎可以测试任何我想在我自己的PC上进行的测试。
编辑
这里有材料一些额外的链接。
w3schools.com HTTP Methods: GET vs. POST
说我的浏览器使用HTTP GET来获取加载的初始文件是否正确? – beckinho
什么类型的请求(GET,POST)将取决于您的浏览器正在做什么。对于在浏览器地址字段中输入URL的标准动作,例如“http:// 127.0.0.1/index.php”,浏览器将在HTTP标头中使用GET。但是,如果您使用的是填写并提交的表单,那么这通常是HTTP标头中的POST。 [HTTP标头字段定义](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html)提供了有关HTTP标头的更多信息。 –
在/etc/
目录,你会发现一个配置文件(我的是dir.conf
),它定义这样的事情...
<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>
这将定义默认页面的位置以及它的扩展名应该寻找(按照定义的顺序)
可能的重复:http://stackoverflow.com/questions/1764597/how-does-the-communication-between-a-browser-and-a-web-server-take -place –