相同的页面链接在Codeigniter中不起作用

时间:2012-05-02 21:31:07

标签: php codeigniter hyperlink markdown footnotes

我已经在example.com上写了自己的博客。 我正在尝试为我的帖子使用脚注。 所以我在地址发了一个帖子:

http://www.example.com/blog/2012/04/post-slug

我将此代码用于脚注(由markdown-extra生成):

<p>That's some text with a footnote.<sup id="fnref:1"><a href="#fn:1" rel="footnote">1</a></sup></p>

<div class="footnotes">
<hr />
<ol>
<li id="fn:1">
<p>And that's the footnote.&#160;<a href="#fnref:1" rev="footnote">&#8617;</a></p>
</li>
</ol>
</div>

此代码作为帖子的正文保存在数据库中。

问题是,当我指向浏览器发帖并点击链接时,他们指向我网站的主页,如下所示:

http://www.example.com/#fnref:1 

http://www.example.com/#fn:1 

而不是正确的:

http://www.example.com/blog/2012/04/post-slug#fnref:1

并且

http://www.example.com/blog/2012/04/post-slug#fn:1

分别

那就是他们没有考虑到网址的一部分

/blog/2012/04/post-slug

他们“认为”出于某种原因他们在主页上。 在Codeigniter中,我选择不在URL中包含index.php。当然,我在routes.php文件中有一些路由定义。 我无法弄清楚为什么会出现这个问题。也许它与路由有关。 我已经尝试了config.php文件中的所有可用选项:

$config['uri_protocol'] =  'AUTO';  

(PATH_INFO等)但没有帮助。

有人可以帮忙吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

CI总是表现在它的根目录中,因为它是index.php文件所在的位置,并且从那里调用所有控制器/方法。 为了解决您的问题,我建议您添加href属性的路径,或使用base,就像Zenbait所说。