Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 如何通过删除codeigniter中的控制器名称来重写url_.htaccess_Codeigniter_Url Rewriting_Routes_Url Routing - Fatal编程技术网

.htaccess 如何通过删除codeigniter中的控制器名称来重写url

.htaccess 如何通过删除codeigniter中的控制器名称来重写url,.htaccess,codeigniter,url-rewriting,routes,url-routing,.htaccess,Codeigniter,Url Rewriting,Routes,Url Routing,我的URL如下: samplesite.com/aboutus[aboutus是控制器] samplesite.com/contactus[contactus是控制器] 我也有注册会员,如图所示 samplesite.com/memberaccount/32[memberaccount是控制器,32是memberid] 我还对上面的URL进行了重写,以便将成员显示为 samplesite.com/memberaccount/john[john是memberid为32的成员] 我想要实现的是: (

我的URL如下:

samplesite.com/aboutus[aboutus是控制器]

samplesite.com/contactus[contactus是控制器]

我也有注册会员,如图所示

samplesite.com/memberaccount/32[memberaccount是控制器,32是memberid]

我还对上面的URL进行了重写,以便将成员显示为

samplesite.com/memberaccount/john[john是memberid为32的成员]

我想要实现的是:


(这会导致问题,因为它与控制器名称aboutus、contactus等冲突。我告诉您,我有40到50个这样的控制器。请任何人建议如何获取此信息。

对于此问题,您使用ci中的路由 它们是给定的

$route['aboutus']=“任何控制器都映射到该名称”;
samplesite.com/aboutus[aboutus是控制器]
samplesite.com/contactus[contactus是控制器]

$route['memberaccount/(:num)]=“任何控制器都映射到该名称/$1”;
samplesite.com/memberaccount/32

如果仍然无法获取,请尝试上面的链接

您需要发布routes.php。您可能会发现,使用codeigniters路由实现这一点很棘手,因为您需要创建一个全包路由以将任何内容重定向到您的成员控制器。这需要放在routes.php的底部。最好重新编写URL以删除 .htaccess$route['(:any)]=“memberaccount/$1”;这对我很有用..所以当我访问samplesite.com/john时,它会映射到samplesite.com/memberaccount/john..但当我尝试访问我的aboutus页面时,它会出现问题。例如,samplesite.com/aboutus..它将aboutus视为站点上的一个成员。并尝试将其映射到samplesite.com/memberaccount/aboutus,这正是我想要避免的…现在有没有办法让路由忽略控制器文件。另一个解决方法是将所有控制器列为$route['aboutus']=“aboutus”;等等。我有60个控制器文件