私の作業中の Conrete5 サイトでは、最近、すべての管理ページで「入力ファイルが指定されていません」という問題が発生しました。問題の根本原因は、管理ページの URL に不要な /index.php が含まれていることです。IE
www.example.com/index.php/login/do_login......
/index.php の部分が URL から削除されると、ページが読み込まれます (ただし、すべての参照ファイルにはまだ /index.php が含まれているため、読み込みに失敗します)。
サブディレクトリでコンクリートを実行していますが、ページのURLはルートからのものです。
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>
私はプリティ URL をオンにしています。これが私の具体的なサブディレクトリ (/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 でホストされていません。
サイトはかなりの間更新されていませんでしたが、私のいじりにもかかわらず、私は成功していないので、どんな提案も大歓迎です.