2

私は次のように多くのルーティングパスを持つアプリケーションを持っています-

F3::route('GET /', 'Main->get_front_page');
F3::route('GET /login/check_for_login', 'Login->check_for_login');

最初のルートは正しく一致しています。ただし、2番目のルートが一致しておらず、404を取得しています。実際、最初のルート以降のルートは一致していません。

さらに複雑なことに、すべてのルートが私のローカルマシンで機能しています。

4

2 に答える 2

3

apache.htaccessファイルを確認してください。特にRewriteBaseURL。私はよくこれを忘れがちです:)

于 2012-03-19T12:04:08.127 に答える
0

共有ホスティングの場合、ファットフリーフレームワークの展開はローカルサーバーのようには機能しません。したがって、.htaccessファイルを作成する必要があります

# Enable rewrite engine and route requests to framework
RewriteEngine On

# Some servers require you to specify the `RewriteBase` directive
# In such cases, it should be the path (relative to the document root)
# containing this .htaccess file
#
# RewriteBase /

RewriteRule ^(tmp)\/|\.ini$ - [R=404]

RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L,QSA]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

上記のコードを使用して.htaccessファイルを作成し、そのファイルを無脂肪フレームワークプロジェクトのルートに配置します。私はこれを試しましたが、うまくいきました。

于 2016-10-26T10:32:59.437 に答える