您好我在我的项目中使用CodeIgniter 1.7.3框架。我已经为这样的链接提供了URL
base_url/index.php/admin/featuredlink/flid/11
,当我点击此链接时,我收到类似这样的错误
no input file specified
。
但是当我将该链接更改为base_url/index.php?admin/featuredlink/flid/11
时,它可以正常工作。
在我的本地系统中,此链接[base_url/index.php/admin/featuredlink/flid/11
]正常工作。
为什么此链接[base_url/index.php/admin/featuredlink/flid/11
]无效?
如何让此链接生效?如果有人知道,请回复。
答案 0 :(得分:1)
首先确保将$config['base_url']
从本地开发地址更改为远程开发地址。它位于application/config/config.php
。
还要确保您使用正确的URL帮助程序功能以满足您的需求。这就是我的意思:
site_url()
函数/方法将始终在URI中包含index.php。以下是使用网站名称http://example.com
作为您网站的域名的示例。
<?php echo site_url('home') ?>
将变为http://example.com/index.php/home
虽然base_url()
函数/方法将始终排除index.php,除非您包含它。以下是使用网站名称http://example.com
作为您网站的域名的示例。
<?php echo base_url('home') ?>
将变为http://example.com/home
和
<?php echo base_url('index.php/home') ?>
将变为http://example.com/index.php/home
请注意,使用这些功能/方法仅在您正确修改.htaccess
文件后才有效。按照以下链接,通过修改.htaccess
文件从URI中删除index.php。
http://codeigniter.com/user_guide/general/urls.html
请记住,这可能因主机需要格式化而在主机之间有所不同,因此请使用您的托管服务进行跟进。大多数情况下,通常会有指南向您展示如何正确配置它。
以下链接可显示site_url()
和base_url()
函数之间的更深层差异。
http://codeigniter.com/user_guide/helpers/url_helper.html
我希望这有帮助!