【问题标题】:Changing URL according to the pages - Code Igniter根据页面更改 URL - Codeigniter
【发布时间】:2014-01-15 12:32:05
【问题描述】:

我是 Code Igniter 的新手,这个项目托管在 Amazon AWS 中, 在我之前还有另一个人在发展。 他设置了所有页面,以便在单击链接时路由页面 但地址栏始终保持“www.mysite.com”。我相信正因为如此,当 页面被刷新它总是回到索引页面

我希望它至少显示,例如, “www.mysite.com/privacy-policy”只是省略了扩展名。我尝试评论“RewriteCond $1 !^(index.php|images|system|js|uploads|css|robots.txt) .HTACCESS 文件中的 RewriteRule ^(.*)$ index.php/$1 [L]" 但它不起作用。

任何帮助将不胜感激 提前致谢, 迈克

【问题讨论】:

  • 如果您要撤消基于 ajax 的站点,您需要做的不仅仅是将 htaccess 设置回 CI 的默认值。
  • 很难说他做了什么。对我来说,这听起来像是很多丑陋的 Javascript。尝试关闭 Javascript 并加载页面。不管发生什么可能给你一个线索。
  • 我确实关闭了javascript,没有任何变化!我不认为这是一个 javascript 问题。

标签: codeigniter mod-rewrite


【解决方案1】:

你是否在config.php文件中更改了站点的基本url?你有没有把相关的控制器放在html页面中的相关链接上?还有一件事是你有没有在控制器之前调用base_url()函数html 页面?如果不通过这些更改进行检查。您的 htaccess 文件很好。但这是完整的文件吗?尝试将其更改为......

DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]

【讨论】:

  • 仍然没有任何反应。我不确定“在 html 页面的控制器之前调用 base_url() 函数”是什么意思?你的意思是我必须在实际链接之前添加 base_url 吗?或在控制器脚本中?此外,当我将鼠标悬停在链接上时,它会显示 IP 地址而不是实际域名。不知道这是否是问题的一部分,但也需要及时解决。
  • 我忘记提及的另一件事是,在我更改之前的 .HTTACCESS 文件中,只有一行。 “全部拒绝”。我不知道这是否有助于确定是否有另一个脚本或设置覆盖它。
猜你喜欢
  • 1970-01-01
  • 2012-02-15
  • 1970-01-01
  • 1970-01-01
  • 2018-07-04
  • 2021-05-15
  • 2013-05-29
  • 2020-12-22
  • 2020-12-21
相关资源
最近更新 更多