0

私は、1 つのシステムフォルダーを共有するappsiteという 2 つのアプリを含む Codeigniter ベースのシステムを使用しています。前者にはバックエンドがあり、後者にはフロントエンドがあります。このため、index.php はデフォルトでsiteになり、バックエンドにアクセスするための別の場所があります。app.php

http://localhost/subdirectory/フロントエンドに行きますが、バックエンドにアクセスするにはhttp://localhost/subdirectory/app.php.

index.phpを削除する方法についてユーザー ガイドを参照しましたが、フロントエンドで動作します。たとえば、aboutの引数を使用して、サイトフォルダーのページクラスにhttp://localhost/subdirectory/pages/about正常に移動します。

問題は、ログイン ページにアクセスしようとすると、URI が を指していることhttp://localhost/subdirectory/app.php/auth/loginです。入力http://localhost/subdirectory/app/auth/loginすると、403 Forbidden ページが返されます。フォルダーのindex.htmlであると思います 更新: appに存在する .htaccess が原因であることがわかりました。

app.php部分を削除するにはどうすればよいですか?

私のアプリケーション構造は次のとおりです。

app
| - cache, config, controllers, views, and other related CI folders
site
| - cache, config, etc, like app
system
| - CI's system folder
app.php
index.php
.htaccess

そして、これが私の現在の.htaccessです:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]

RewriteRule ^(app)/(.*)$ app.php/$1 [NC,L]
RewriteRule ^(.*)$ index.php/$1 [NC,L]

それはうまくいきません。

何か助けはありますか?ありがとうございました!

更新: 403 表示が禁止されているのは、index.htmlだけでなく、「すべて拒否」のコンテンツを含む .htaccess が原因です。これが役立つかどうかはわかりません。

4

4 に答える 4

0

アプリにルーティングできます | 他の方法でサイト

//index.php
if(preg_match('/^app/ui', $_SERVER['REQUEST_URI'])) {
     require_onse "app.php";
} else {
     require_onse "site.php"
}
于 2013-05-05T20:03:48.253 に答える
0

さて、私のアーキテクチャを再構築することでそれを理解しました。

ここにあります:

app
| - (application name for backend) folder
| -- models, config, controllers, etc. folders
| - index.php for backend
site
| - models, config, controllers, etc.
system
| - CI system folder
index.php for the frontend (which is on 'site')

これが機能するために、.htaccess を使用した厄介な腕相撲は必要ないように見えます。これにより、自分が本当に馬鹿に見えました。

助けてくれてありがとう!

于 2013-05-07T13:10:42.157 に答える
0

管理パネルとフロント エンド エリアを備えた Web サイトを作成していたときに、この問題が発生しました。index.php メソッドを削除する標準を使用してみて、代わりに codeigniter の routes 関数を使用してください。

http://ellislab.com/codeigniter/user-guide/general/routing.html

幸運を!

于 2013-05-05T08:28:51.227 に答える