【问题标题】:URI multilingual CodeIgniterURI 多语言 CodeIgniter
【发布时间】:2014-10-07 22:22:47
【问题描述】:

我们正在使用 Codeingiter 库 i18n (link) 创建一个多语言网站。

在此之前,例如 www.thedomain.com/register 和 register 是我们控制器中的一个函数。现在,当我们放置这个库时,它会获取域、语言字符串、控制器名称和函数名称:www.thedomain.com/es/homegf/register(其中 homegf 是我们的控制器)。

我们希望这个 URI 在没有控制器名称的情况下也能正常工作(www.thdomain.com/es/register),就像图书馆的示例中一样,但我们认为问题出在我们的 routes.php 中。

这就是我们在 routes.php 中的内容

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$route['default_controller'] = "homegf";
$route['404_override'] = '';
$route['^(en|es|de)/(.+)$'] = "$2";
$route['^(en|es|de)$'] = $route['default_controller'];

这是我们的 .htaccess

RewriteEngine on
RewriteCond $1 !^(index\.php|files|robots\.txt)
RewriteRule ^(.*)$  /index.php/$1 [L]

您可以在https://bitbucket.org/ticketcomunicacion/grinfood/src/17ddde60e340a1f2bc389f54ec579e1e903ee86b?at=multilenguaje找到我们的代码进行审查

【问题讨论】:

  • 所以如果你没有被重新路由到你想要的地方,你最终会去哪里?
  • 我在www.thedomain.com/es/homegf/register中找到的内容,我想去www.thedomain.com/es/register,我想消失homegf

标签: php .htaccess codeigniter multilingual


【解决方案1】:

据我了解,您需要没有控制器名称的控制器 url。

如果您想将 URL 从您的控制器名称更改为 other ,

在你的 routes.php 中写下以下内容

$route['homegf/register'] = "register";

你可以访问

domain.com/es/register

【讨论】:

  • 该网站是动态的,有很多功能,如注册(验证,忘记密码,新订单......)计划不必编写每个......而是使用正则表达式或其他东西跨度>
  • 尝试在 htaccess 上添加 RewriteRule ^(.*)$ /homegf/$1 [L]
  • 是的,我试过但没用,我认为是 routes.php 中的东西,因为 www.thdomain.com/es/register 显示 404 错误页面(未找到)
  • 你能解释一下吗,当前的 url 是什么以及你想要它的方式。
  • 当前网址:www.thedomain.com/es/homegf/register 我想要 www.thedomain.com/es/register ;在将库放置为 www.thedomain.com/register 之前,只需在 routes.php 文件中添加 route[(:any)]='homegf/$1'
【解决方案2】:

问题出在我们的路线上。

这就是我们设法使它工作的方式:

$route['^es/(.+)$'] = "homegf/$1";
$route['^en/(.+)$'] = "homegf/$1";

$route['^es$'] = $route['default_controller'];
$route['^en$'] = $route['default_controller'];

$route['(:any)'] = 'homegf/$1';

【讨论】:

    猜你喜欢
    • 2011-02-16
    • 2018-02-26
    • 1970-01-01
    • 2013-11-04
    • 2017-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    相关资源
    最近更新 更多