Php 如何使apache服务文件:///
我对HTML、PHP和其他东西有点陌生 我正在尝试在网站上线之前对其进行本地测试。我使用PHP和MySQL设置Apache服务器,并将虚拟服务器指向localhostPhp 如何使apache服务文件:///,php,html,apache,Php,Html,Apache,我对HTML、PHP和其他东西有点陌生 我正在尝试在网站上线之前对其进行本地测试。我使用PHP和MySQL设置Apache服务器,并将虚拟服务器指向localhost "C:/path/to/docroot/" 一切都很好 现在在我的index.html中有一个链接指向同一目录(C:/path/to/docroot/)中的文件“mail form.php”。在这个链接中,我只指定了 href="mail-form.php" 没有绝对路径,因为我不知道生产服务器中的绝对路径是哪个,而且我不想在
"C:/path/to/docroot/"
一切都很好
现在在我的index.html中有一个链接指向同一目录(C:/path/to/docroot/)中的文件“mail form.php”。在这个链接中,我只指定了
href="mail-form.php"
没有绝对路径,因为我不知道生产服务器中的绝对路径是哪个,而且我不想在测试之后全部更改它们。(如果这不好的话,我愿意接受建议)
现在我不明白的是:当我输入浏览器的URL时
"file:///C:/path/to/docroot/index.html"
然后单击链接,浏览器将尝试打开
"file:///C:/path/to/docroot/mail-form.php"
这不会被PHP解释,而是作为文本返回
如果我输入
"localhost/index.html"
然后点击链接,浏览器调用
“localhost/mail form.php”
它得到了正确的解释,显示了它应该做什么
我显然可以接受这一点,但我很好奇是否有办法让Apache/PHP服务于“file:///...就像“localhost/…”一样?毕竟,它们都是同一个文件。还是浏览器问题?还是我想错了?你不能让Apache服务
文件://
。使用该方案指示浏览器直接从文件系统获取文件。如果您想使用Apache,那么您必须使用http://(或另一个发出Apache支持的网络请求的URL方案)。否。文件://
协议不是http。浏览器甚至不会将其发送到您正在运行的本地主机服务器,而只是读取文件。这不是浏览器问题,而是浏览器功能!谢谢你的回复,谢谢你的解释。