URI路由不起作用(多语言)
你好吗?URI路由不起作用(多语言)
摘要:我试图从本地主机迁移网站到亚马逊EC2和几乎任何路线带来的“请求的URL example.com/xxx/yyy/此服务器上找到。
语境:
- 使用笨的public_html中,应用程序的结构和系统
- 我们b语言的URI。例如:localhost/public_html/es/main。
- 对于测试,一页(注册)它的路由方式不同:localhost/public_html/admin/register。
- 该页面从localhost运行。
问题: 我上传的网页对我的EC2,当我尝试访问,几乎每一页显示404错误。只是寄存器页的作品,但只有当我通过example.com/index.php/admin/register(example.com/admin/register携带相同的404错误)调用它。
任何意见或想法探索将是非常受欢迎的!谢谢!!
PS:如果有帮助,我会分享我目前的routes.php代码。
$route['default_controller'] = "main";
$route['404_override'] = '';
$route['^(en|es)/(.+)$'] = "$2";
$route['^(en|es)$'] = $route['default_controller'];
的问题是在httpd.conf,其中有 “AllowOverride” 为的public_html(其中我有.htacces文件)设置为“无”。我只是不得不将它更改为全部。
非常感谢AchrafSoltani和Grigorash的尝试,非常感谢!
问题:我上传的网页对我的EC2,当我尝试访问,几乎每一页显示404错误。只是注册页面的作品,但只有当我通过example.com/index.php/admin/register(example.com/admin/register进行相同的404错误)调用它时。
这意味着要么没有正确设置.htaccess。默认情况下,代码点火器依赖于index.php来处理所有的请求,但由于它在URL上看起来很丑,你应该添加一个带有正确参数的.htaccess以将其从URL中删除,然后从系统/应用程序打开config.php/config目录并替换:
$config['index_page'] = “index.php”
到
$config['index_page'] = “”
谢谢,我探讨了它,但我已经有$ config ['index_page'] =“”,我的.htaccess很好。这个问题是在httpd.conf中,但无论如何,非常感谢您的帮助! – 2012-04-30 09:04:36
开始寻找的重要一点是找到命中路由功能的字符串,并查看它与您定义的routes-regex的不同之处;你不需要单独模式开始和结束? – 2012-04-27 10:35:46