【发布时间】:2012-10-11 12:01:25
【问题描述】:
我正在尝试学习 CI,并且刚刚完成了 starter tutorial。我发现如果我的 URL 以斜杠结尾,则某些链接 HREF 不起作用 - 例如,这些链接:
<?php foreach ($news as $news_item): ?>
<h2><?php echo $news_item['title'] ?></h2>
<div id="main">
<?php echo $news_item['text'] ?>
</div>
<p><a href="news/<?php echo $news_item['slug'] ?>">View article</a></p>
<?php endforeach ?>
当我打开时,故事的链接可以正常工作
/index.php/news
但如果我在,则不会
/index.php/news/
正如我所说,这是教程中的内容,所以我不确定发生了什么。
我可以让 HREF 成为绝对的......
<p><a href="<?php echo config_item('base_url').config_item('index_page').'/news/'.$news_item['slug']; ?>">View article</a></p>
...但我认为我不应该这样做。
有什么想法吗?
【问题讨论】:
-
为什么?这不是 Web 开发的一般要求,CI 自己的教程没有这样做。
-
CodeIgniter 有
site_url()函数可以解决你的问题(它会生成绝对 URL)。问题不是 codeigniter 问题,而是相对 url 首先是如何工作的。请看我的回答。
标签: php codeigniter url href