【问题标题】:Can a forward slash at the end of a url effect the pages formatting?网址末尾的正斜杠会影响页面格式吗?
【发布时间】:2013-06-20 23:27:09
【问题描述】:

我有一个.htaccess 文件,它将所有页面重定向到index.php

INDEX.PHP

<?php    
$url = $_SERVER['REQUEST_URI'];    
$url_array=explode("/",$url);   
array_shift($url_array);   
$url = $url_array[0].'.php';
include($url_array[0].'.php');
?>

此页面获取格式为www.sitename.com/profile/01234 的所有传入url,并将每个部分存储在数组的单独行中。第一行 ($url_array[0]) 是页面(配置文件)的名称,并被放入 include 语句中。

当我转到www.sitename.com/profile 时,它完美地包含“profile.php”,但只要我添加一个 //01234 然后格式“profile.php”变得一团糟。

我使用print_r($url_array); 来检查数组,一切正常。

Array ( [0] => people [1] => 01234 ) 

我花了几个小时试图弄清楚 url 末尾的 / 将如何影响包含文件的布局/样式表,但没有任何成功。任何帮助将不胜感激。

【问题讨论】:

    标签: php url include


    【解决方案1】:

    如果您的浏览器认为您位于www.sitename.com/profile/01234 并尝试加载css 样式表或js 文件,例如src='style.css',您的浏览器将尝试加载www.sitename.com/profile/style.css。您要做的是告诉浏览器始终在您的域的根目录中查找该文件,方法是将您的 css/js 源设置为src='/style.css'。这样,它总是相对于您的根路径。

    【讨论】:

    • 太棒了!非常感谢!
    【解决方案2】:

    这可能是由于您的 html 中的相对 ccs 路径,添加最后一个 / 会导致不生成现有的 css 路径。

    【讨论】:

      猜你喜欢
      • 2013-01-18
      • 2011-07-02
      • 2011-08-21
      • 1970-01-01
      • 2010-11-25
      • 2019-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多