在 PHP 中需要或包含文件时出现路径问题
Path troubles when require or include file in PHP
我有这样的目录结构:
- index.php
- templates(directory)
- login.php
- header.php
- js(directory)
- jquery.min.js
我在 header.php
中包含脚本 jquery.min.js
,然后我在 login.php
中包含 header.php
,但是 jquery.min.js
的路径中断了。我如何尝试通过替换它来解决它:
<script src="js/jquery.min.js">
至此
<script src="<?php echo dirname(__FILE__)?>js/jquery.min.js">
但后来我得到了这条资源路径:
http://localhost/var/www/auth/js/jquery.min.js
又是 404 错误。有人可以向我解释如何解决这个问题吗?
js 的脚本文件在 web-root 的上下文中工作。只要您的网络根目录在您的 index.php
所在的位置,那么 <script src="/js/jquery.min.js">
应该可以工作
您使用 <script src="js/jquery.min.js">
这是一个相对路径。所以,如果你调用 login.php
浏览器相对于它请求 js:templates/js/jquery.min.js
显然不存在
您要做的是找到 javascript 文件相对于应用程序根目录的路径,而不是任何特定的 php 文件。因此,如果您将脚本标记更改为以 /
开头,它将从应用程序的根目录提供服务,而不管 php 文件位于何处。
将其更改为 <script src="/js/jquery.min.js">
将从 http://localhost/js/jquery.min.js
提供它,而不管您的 php 文件在您的结构中的哪个位置。
我有这样的目录结构:
- index.php
- templates(directory)
- login.php
- header.php
- js(directory)
- jquery.min.js
我在 header.php
中包含脚本 jquery.min.js
,然后我在 login.php
中包含 header.php
,但是 jquery.min.js
的路径中断了。我如何尝试通过替换它来解决它:
<script src="js/jquery.min.js">
至此
<script src="<?php echo dirname(__FILE__)?>js/jquery.min.js">
但后来我得到了这条资源路径:
http://localhost/var/www/auth/js/jquery.min.js
又是 404 错误。有人可以向我解释如何解决这个问题吗?
js 的脚本文件在 web-root 的上下文中工作。只要您的网络根目录在您的 index.php
所在的位置,那么 <script src="/js/jquery.min.js">
应该可以工作
您使用 <script src="js/jquery.min.js">
这是一个相对路径。所以,如果你调用 login.php
浏览器相对于它请求 js:templates/js/jquery.min.js
显然不存在
您要做的是找到 javascript 文件相对于应用程序根目录的路径,而不是任何特定的 php 文件。因此,如果您将脚本标记更改为以 /
开头,它将从应用程序的根目录提供服务,而不管 php 文件位于何处。
将其更改为 <script src="/js/jquery.min.js">
将从 http://localhost/js/jquery.min.js
提供它,而不管您的 php 文件在您的结构中的哪个位置。