我在文件夹“root/test/index.php”中有一个 php 脚本,它调用位于“root/app/run.php”中的另一个 php 脚本
在 run.php 文件中,我通过调用 chdir 来更改 php 的工作目录以简化我的 require_once 路径
所有的 php 包含工作正常,但是 HTML 路径完全困惑。
为了使我的 style.css 正常工作,我必须使用相对于“root/test/”的路径,即使我的 style.css 位于“root/app/”中。
这个有效:
<link rel="stylesheet" type="text/css" href="../app/style.css">
这适用于所有 HTML 源,如 img 等。
如何更改 HTML 工作目录?
我查看了 php/HTML 文档,但没有找到好的解决方案。 有什么线索吗?
提前致谢。
最佳答案
HTML 对 PHP 脚本的工作目录一无所知。
HTML 被发送给不知道工作目录是什么的客户端。
您可以在 .htaccess 文件中添加一些重定向(如果您使用的是 apache)以将 root/test/
重定向到 root/app
或类似的东西。
这是它的工作原理:
- 你的浏览器请求/root/test/index.php
- 你的服务器处理他所有的事情然后输出HTML文件
- 您的浏览器解析 HTML 文件
- 如果它找到类似的东西,它将在此处搜索图像:/root/test/images/cat.png 因为您正在查看/root/test/index.php 文件并提供了相对路径
如果您有更多问题,请添加评论。
关于php - 在 PHP 中更改工作目录不会影响 HTML src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25121850/