【发布时间】:2014-06-18 22:43:32
【问题描述】:
我的工作 Conrete5 网站最近在所有管理页面上都出现了“未指定输入文件”问题。问题的根源似乎是管理页面在 URL 中有一个不必要的 /index.php。即。
www.example.com/index.php/login/do_login......
如果 /index.php 部分从 URL 中删除,页面将加载(尽管所有引用的文件仍然有 /index.php,因此无法加载)。
我在子目录中运行具体,但页面网址来自根目录,例如
www.example.com/concrete-page-title...
这是我根目录中的 .htaccess 文件,将具体请求中继到具体子目录。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(\.|/$)
RewriteRule (.*) http://www.example.co.uk/$1/ [R=301,L]
RewriteCond %{HTTP_HOST} ^example.co.uk$
RewriteRule ^/?(.*)$ http://www.example.co.uk/$1 [R=301,L]
# redirect concrete
RewriteCond %{REQUEST_URI} !^/concrete
# permit normal access to wordpress installation
RewriteCond %{REQUEST_URI} !^/news
RewriteRule ^(.*)$ concrete/$1 [L]
</IfModule>
我打开了漂亮的网址,这是我的具体子目录 (/concrete) 中的 .htaccess 文件。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
</IfModule>
旁注:
cgi.fix_pathinfo=1(已改为0,无变化)
而且该网站不是由 GoDaddy 托管的。
这些网站已经有一段时间没有更新了,尽管我摆弄我没有成功,所以非常欢迎任何建议。
【问题讨论】:
-
你在这里查看过 Jordan Lev 的 cmets:concrete5.org/community/forums/chat/no-input-file-specified1
-
很遗憾,我已经尝试了所有这些规则几次 :(
标签: php apache .htaccess concrete5