【问题标题】:Is it possible to use <base> tag for specific references and URLs only?是否可以仅对特定引用和 URL 使用 <base> 标记?
【发布时间】:2015-09-28 19:33:02
【问题描述】:

美好的一天! 是否可以仅对特定引用和 URL 使用标签? 我遇到了一个问题,其中存在错误锚标记及其 href 属性。例如,有一个模块loans,该模块的所有PHP文件只位于一个文件夹中,看看这个:

这些是文件夹和网站:

htdocs - system - members - loans(loan-app.php, loan-sum.php)

如果我要使用基本标记,那么每当我在代码上的标记上放置 src 时都会出错,因此作为一种解决方案,我不会在图像中包含基本标记中的值,而只在链接中使用。有可能吗?

注意:这里有人建议我只需要禁用当前打开的模块以避免连接 url 和错误。但是我刚刚意识到我不能,因为如果我打开另一个链接,我需要启用另一个链接,但是它们具有相同的位置,因为它们属于同一个模块。不幸的是,它可能会导致 url 连接。

无论如何,这是我之前与此相关的问题:

Anchor HREF, if I click again the anchor the link on the address doubles or it concatenate on the existing link. What's the best way to avoid this?

【问题讨论】:

    标签: php html url directory base-tag


    【解决方案1】:

    base 元素用于相对 URL。如果您对a 元素、img 元素、link 元素等使用完整的 URL,base 元素将被忽略。 base 元素在您想要测试本地与实时测试时非常有用(因为您应该始终首先在本地测试)。除非您想使用我不推荐的极其复杂的 JavaScript,否则您不能选择仅适用于某些情况的基本元素。

    基本元素

    <base href="https://www.example.com/" />
    

    相对网址

    <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 重写之类的东西,请使用文件夹 loans/sum/[index.php] 中的 index.php 创建干净的 URL。

    有效网址

    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>';?>
    

    【讨论】:

      猜你喜欢
      • 2018-01-30
      • 1970-01-01
      • 2012-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-22
      • 2021-12-27
      • 1970-01-01
      相关资源
      最近更新 更多