【发布时间】:2014-11-26 13:46:40
【问题描述】:
我不明白这是如何工作的,而后者则不行...如果我的 root 上有一个 .htaccess:
RewriteEngine on
RewriteBase /
ReWriteCond %{REQUEST_URI} !public/
ReWriteRule ^(.*)$ public/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?/$0 [PT,L]
当我输入我的 URL (localhost) 时,我在 root/public/index.php 中的索引一切正常。页面重定向找到我的索引并删除部分 URL。
但是,如果我将所有内容重新定位到另一个文件 root/en 并将 .htaccess 文件放入其中:
RewriteEngine on
RewriteBase /
ReWriteCond %{REQUEST_URI} !en/public/
ReWriteRule ^(.*)$ en/public/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?/$0 [PT,L]
当我输入 localhost/en 时,它不想再将我重定向到 root/en/public/index.php... 我得到“找不到您请求的页面。”
【问题讨论】:
-
如果您删除 .htaccess 文件并尝试通过完整路径浏览到目录,codeigniter 是否会加载,还是会出现相同的错误? (localhost/en/public)
标签: php .htaccess codeigniter mod-rewrite