Php 如何在codelginter中更改url
我的网址是 现在我需要像这样的网站url。 mydomain name希望以控制器名称访问。 例如类似url www.testing.com/pages。”测试“在codeigniter中充当控制器” 解释如何从域名中获取控制器名称。以及如何从url中删除控制器名称(www.mydomain.com/controllername/method)Php 如何在codelginter中更改url,php,html,codeigniter,Php,Html,Codeigniter,我的网址是 现在我需要像这样的网站url。 mydomain name希望以控制器名称访问。 例如类似url www.testing.com/pages。”测试“在codeigniter中充当控制器” 解释如何从域名中获取控制器名称。以及如何从url中删除控制器名称(www.mydomain.com/controllername/method) 我需要像www.controllername.com/method这样的url使用路由 您必须在中定义路由 application/config/ro
我需要像www.controllername.com/method这样的url使用路由 您必须在中定义路由 application/config/routes.php
这可能会有所帮助。在application/config/routes.php中使用此代码
$route['method'] = 'controllername/method';
用于路由。IMO最好使用.htaccess文件,而不是CI路由。我不擅长这些规则,因此可能存在打字错误,这是一般的想法:
// If HOST contains www, strip www.
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
// If URI contains DOMAIN.COM, it was probably just redirected, dont do it again!
RewriteCond %{REQUEST_URI} !^%{HTTP_HOST}
// Re-write http://domain.com/method to http://domain.com/domain.com/method
RewriteRule (.*) http://%{HTTP_HOST}/%{HTTP_HOST}/$1 [L]
我欣赏建设性的批评。有没有人能提供一些反馈,解释为什么我的答案被否决了。我在这里看到了许多其他答案,它们并不试图回答OP的问题,但它们已经被提升了投票率。他想提取域名并将其用作控制器……非常规……因此我提供了一种使用知名Apache mod的方法,而不是试图重新发明称为CodeIgniter的轮子。所以…如果你知道的更多,请帮助我们。