该base
元素用于相对 URL。如果您对一个a
元素、img
元素、link
元素等使用完整的 URL,则该base
元素将被简单地忽略。base
当您想要测试本地与实时(因为您应该始终首先在本地测试)时,该元素非常有用。除非您想使用我不推荐的极其复杂的 JavaScript,否则您不能选择仅适用于某些情况的基本元素。
基本元素
<base href="https://www.example.com/" />
相对 URL
<link href="themes/default/style.css" media="screen" rel="stylesheet" type="text/css" />
<img alt="Example" src="images/test.png" />
<a href="loans/">Loans</a>
<a href="loans/sum/">Loan Sum</a>
如果您不使用诸如 Apache 重写之类的东西,请在文件夹中使用以创建干净的index.php
URL 。loans/sum/[index.php]
有效网址
https://www.example.com/themes/default/style.css
https://www.example.com/images/test.png
https://www.example.com/loans/
https://www.example.com/loans/sums/
大多数人从复杂的设置开始。您应该只拥有域名的最根目录(如上所示)并使您的所有 URL 都相对。
对于base
元素本身,您应该使用 PHP 来确定站点是本地站点还是实时站点,然后回显适当的路径;这样你就不需要任何复杂的设置,比如需要两个单独的站点副本。
您需要将base
元素的 PHP 代码分成两部分;对于实时站点,$url2
应该只是/
,然后因为您自然会有其他项目存档和/或正在开发中,那么您localhost
将相应地更改路径。
基本元素 PHP - 第 1 部分
`<?php echo '<base href="'.$url1.$url2.'" />' . "\n";?>`
基本元素 PHP - 第 2 部分
您必须在这里做一些工作,但这应该让您对其他多汁的可能性敞开心扉,让您的生活更轻松,而且我不知道您所有的本地目录结构。因此,探索$_SERVER
数组以开始将$url1
字符串放在一起并记住保持简单。
<?php echo '<pre>';print_r($_SERVER);echo '</pre>';?>