CodeIgniter 4框架NGNIX重定向配置,Controller or its method is not fou...
<p>CodeIgniter 4框架刚推出,各项新手如果下载用户手册学习,按照手册进行操作,绝对会遇到一个大坑,这是CodeIgniter 4中文手册不完善造成的,在他们的论坛上目前已经基本没有人发言了,一片死寂,这个框架的技术支持真的超级烂。也不知道为什么这么多人用。<br></p><p>你如果安照手册安装完,一般访问默认页面是没有问题的,但如果开始练习第一个实例,构建你的应用时,你会发现永远都是404错误,永完都在提示Controller or its method is not found: 。你找遍整个百度和他们的用户论坛,都在告诉你说是你用的NGINX服务器的问题,需要配置什么伪静态重定向等等,你如果按照这些狗屁教程,整两天也整不明白整不对,楼主就是被这些烂文章误导了,耽误了整整两天时间。 最后是自己无意中发现了,是他们中文手册示例代码的问题,根本和什么NGINX,apache什么PHP扩展、函数没有半毛钱关系。</p><p>如果你有幸看到我的文章,可能会让你少浪费两天时间,感谢我吧。</p><p>CodeIgniter 4的安装其实很简单,下载解压,再访问网址/PUBLIC目录就可以了。90%可能都可以看到默认页。<br></p><p>手册第一个实例中这样写的:</p><pre class="brush: php"><pre><span class="o"><?</span><span class="nx">php</span><span class="k">class</span> <span class="nc">Pages</span> <span class="k">extends</span> <span class="nx">CodeIgniter\Controller</span> <span class="p">{</span>
<span class="k">public</span> <span class="k">function</span> <span class="nf">view</span><span class="p">(</span><span class="nv">$page</span> <span class="o">=</span> <span class="s1">'home'</span><span class="p">)</span>
<span class="p">{</span>
<span class="p">}</span>
<span class="p">}</span>
</pre></pre><p><span style="color: rgb(51, 51, 51); font-family: "noto sans cjk sc", "pingfang sc", "microsoft yahei", "hiragino sans gb", sans-serif;">尊重知识产权,转载请注明并复制本段,一元复始技术论坛原创</span><a href="http://www.1rmb.net/" target="_blank" title="一元复始技术论坛" style="font-family: "noto sans cjk sc", "pingfang sc", "microsoft yahei", "hiragino sans gb", sans-serif;">http://www.1rmb.net</a><span style="color: rgb(51, 51, 51); font-family: "noto sans cjk sc", "pingfang sc", "microsoft yahei", "hiragino sans gb", sans-serif;">.</span><br></p><p>你感觉手册怎么会错呢,认真核对每个字母都对,但就是一直提示404Controller or its method is not found: ,你一定以为是NGINX服务器不能正解解析的问题,但实际根本不是,是他们自己写的狗屁手册中的代码全是错误的,真不知道是一帮什么人,免费的东西就是这么烂,还官方出的手册,真他们胡扯。下面本站长给出正确代码如下,你会发现一切都解决了。</p><pre class="brush: plain"><pre class="brush: php"><?php
namespace App\Controllers;
class pages extendsbasecontroller
{
public function view($page = 'home')
{
if(!file_exists(APPPATH.'/views/Pages/'.$page.'.php'))
{
throw new \codeIgniter\PageNotFoundException($page);
}
$data['title'] = ucfirst($page);
echo view('Templates/Header', $data);
echo view('Pages/'.$page, $data);
echo view('Templates/Footer', $data);
}
}
?></pre></pre><p>和什么服务器配置完全没有关系,是他们手册代码错误,但你搜遍全网和他们的论坛,都误导你说是服务器配置问题,这就是他们的可恨之处。</p>
页:
[1]