Codeigniter ExpressionEngine 2,管理路径路由
我在ExpressionEngine工作的第一天,我了解基本的CodeIgniterCodeigniter ExpressionEngine 2,管理路径路由,codeigniter,url-routing,expressionengine,Codeigniter,Url Routing,Expressionengine,我在ExpressionEngine工作的第一天,我了解基本的CodeIgniter /admin.php重命名为/john_doe.php 将$config['cp\u url']值更新为http://mysite.com/john_doe.php 我想将mysite.com/johndoe重定向到mysite.com/john_doe.php,作为管理EE2的替代方案 在CodeIgniter中(根据用户指南),必须将此行添加到/application/config/routes.php文件
http://mysite.com/john_doe.php
$route['johndoe'] = "john_doe.php";
问题是:我如何在ExpressionEngine中做到这一点
提前感谢。如果您只想将
/johndoe
重定向到/john_doe.php
,则无需使用ExpressionEngine执行任何操作(除非您真的想这样做)
相反,只需在Apache的.htaccess
文件中创建一个简单的mod_rewrite
规则:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^johndoe /john_doe.php [R=301,L]
</IfModule>
ExpressionEngine将重写其所有控制面板链接,以使用屏蔽访问文件名——只是不要忘记编辑该文件,以确保系统文件夹的路径设置正确:
$system_path = './renamed-system-folder';
在EE2中屏蔽控制面板访问权限的“老派”方法(即EE1)仍然是可能的
打开/system/index.php
并取消注释define('MASKED_CP',TRUE)代码>:
/*
* --------------------------------------------------------------------
* MASKED CP ACCESS
* --------------------------------------------------------------------
*
* This lets the system know whether or not the control panel is being
* accessed from a location outside the system folder
*
* NOTE: If you set this, be sure that you set the $system_path and the
* 'cp_url' item in the $assign_to_config array below!
*
*/
define('MASKED_CP', TRUE);
在同一文件中,取消注释并将以下两个变量设置为新环境:
$system_path = "./masked-system";
$assign_to_config['cp_url'] = 'http://example.com/masked-system/index.php';
这是另一种屏蔽控制面板访问的方法
重命名admin.php
的技术要简单得多,并且在ExpressionEngine用户指南中被推荐为一种新的方法。这对您的问题没有任何帮助,但我发现,当我不得不处理EE时,对CodeIgniter的深入了解对我毫无帮助。可能会忘记它与CI有任何关系。进行了很多尝试,但没有达到预期效果,但对于我想要解决它的方式来说,这是一个有趣的解决方案。虽然.htaccess文件解决方案失败,但我更喜欢重命名文件解决方案,并为CP文件提供了一个复杂的名称和正确的路径。我刚刚修复了问题.htaccess
通过删除URI上的开始斜杠来进行规则;我完全疏忽了。现在应该可以正常工作了。
$system_path = "./masked-system";
$assign_to_config['cp_url'] = 'http://example.com/masked-system/index.php';