Php CodeIgniter控制器功能不工作
我已经在VPN服务器上部署了我的站点。我可以访问控制器构造函数,但当我试图调用任何方法(如Php CodeIgniter控制器功能不工作,php,codeigniter,Php,Codeigniter,我已经在VPN服务器上部署了我的站点。我可以访问控制器构造函数,但当我试图调用任何方法(如mydomain/controller/method)时,它都不起作用。但是,“mydomain/controller/index”也不起作用 当我调试php方法function\u exists('my function name')时,即使该方法存在于我的控制器中,也会出现错误 请帮助解决这个问题,并让我知道如果我必须做任何配置更改 谢谢 您需要导航到http://mydomain/index.php/
mydomain/controller/method
)时,它都不起作用。但是,“mydomain/controller/index”也不起作用
当我调试php方法function\u exists('my function name')
时,即使该方法存在于我的控制器中,也会出现错误
请帮助解决这个问题,并让我知道如果我必须做任何配置更改
谢谢 您需要导航到
http://mydomain/index.php/controller/method
。。。除非在根目录中有一个.htaccess
文件,其中index.php
是从URL中删除index.php
如果正确设置了此.htaccess文件,则可以导航到http://mydomain/controller/method
下面是我用于调试的codeigniter的.htaccess文件的示例
php_flag display_errors on
php_value error_reporting 7
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
将所有文本复制到名为.htaccess的文件中,并将其放在codeigniter根目录中index.php的位置
/////////////////根据OP提供的更多信息进行编辑//////////////////
首先测试以下各项是否有效
除非您将其删除,否则CI默认为您提供一个欢迎控制器(/application/controllers/welcome.php)
和一个由控制器(/application/views/welcome\u message.php)
调用的欢迎视图
查看这些文件是否存在,以及它们是否没有从codeigniter框架中的zip文件中获取它们,并将其放在这些目录中
导航到config文件夹并打开routes.php
(/application/config/routes.php)
并在保留路由下放入$route['default\u controller']=“welcome”代码>如果它不在那里
此外,请确保更改了配置,以反映您正在使用.htaccess文件的事实
该属性应在config.php$config['index\u page']=''中设置如下:代码>
请注意,如果您不使用.htaccess,则会将其设置为$config['index_page']='index.php'代码>
这些说明是为了让你在页面上看到一些东西。进行上述操作时,您可以将默认控制器更改为您的控制器(不受欢迎)。您需要导航到http://mydomain/index.php/controller/method
。。。除非在根目录中有一个.htaccess
文件,其中index.php
是从URL中删除index.php
如果正确设置了此.htaccess文件,则可以导航到http://mydomain/controller/method
下面是我用于调试的codeigniter的.htaccess文件的示例
php_flag display_errors on
php_value error_reporting 7
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
将所有文本复制到名为.htaccess的文件中,并将其放在codeigniter根目录中index.php的位置
/////////////////根据OP提供的更多信息进行编辑//////////////////
首先测试以下各项是否有效
除非您将其删除,否则CI默认为您提供一个欢迎控制器(/application/controllers/welcome.php)
和一个由控制器(/application/views/welcome\u message.php)
调用的欢迎视图
查看这些文件是否存在,以及它们是否没有从codeigniter框架中的zip文件中获取它们,并将其放在这些目录中
导航到config文件夹并打开routes.php
(/application/config/routes.php)
并在保留路由下放入$route['default\u controller']=“welcome”代码>如果它不在那里
此外,请确保更改了配置,以反映您正在使用.htaccess文件的事实
该属性应在config.php$config['index\u page']=''中设置如下:代码>
请注意,如果您不使用.htaccess,则会将其设置为$config['index_page']='index.php'代码>
这些说明是为了让你在页面上看到一些东西。当您开始进行上述操作时,您会将默认控制器更改为您的控制器(不受欢迎)。它是如何工作的?你有任何PHP错误吗?以任何方式输出?有HTTP状态码吗?只是给我们一些工作…不,我没有看到错误,只有空白页。这可能意味着你的PHP无声地失败,因为你没有启用错误报告。查看服务器上的错误日志,它可能包含一些PHP错误。或者您正在使用htaccess重写您的URL?我如何使用php函数检查文件中的错误?是否存在任何错误?它如何不起作用?你有任何PHP错误吗?以任何方式输出?有HTTP状态码吗?只是给我们一些工作…不,我没有看到错误,只有空白页。这可能意味着你的PHP无声地失败,因为你没有启用错误报告。查看服务器上的错误日志,它可能包含一些PHP错误。或者你正在使用htaccess重写你的URL?我如何用php函数检查文件中的错误?你甚至可以不做任何修改就加载示例页面吗?另外,请查看firefox的Firebug/FireHP组合。是的,我已经在CodeIgniter目录的根目录中创建了一个test.php类。它工作正常。但控制器没有(好吧,好吧,我们越来越接近这个问题。你说你在CI根目录下创建了一个test.php?为什么?你通常不会在CI根目录下的CI构建中使用这个文件。无论如何,这不是我想要的。在CI构建中,你会得到一个带有视图的欢迎控制器。你看到这个欢迎消息了吗?你尝试了我建议的一切吗?如果是的,还有一件更神秘的事情我们需要更多的信息来帮助。唯一的另一件事