7

こちらの手順に従って、テスト用の hello world Slim アプリを作成しました。

この呼び出しを行うと、404 エラーが発生します。

http://my_server/my_app/hello/John

一方、この呼び出しを行うと、「Hello John」メッセージが表示されるため、うまく機能します。

http://my_server/my_app/index.php/hello/John

しかし、もちろん、URL に index.php を含めたくありません...何が問題なのですか?

=======編集=======

次のような.htaccessファイルを作成するのを忘れました(Slim Frameworkのドキュメントに従って、index.phpと同じディレクトリに):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

今、私はこのエラーを受け取ります:

/physical_path_to_my_files/index.php was not found on this server
4

4 に答える 4

16

htaccess ファイルが/my_appディレクトリにある場合は、ルールを次のように変更します。

RewriteEngine On

RewriteBase /my_app/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

ドキュメント ルートにある場合は、パスを追加する必要があります。

RewriteRule ^ /my_app/index.php [QSA,L]
于 2012-09-09T23:10:55.970 に答える
5

.htaccess を次のように変更することもできます (同様の問題がありましたが、これで解決しました):

.htaccess:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ %{ENV:BASE}index.php [QSA,L]
于 2013-11-09T22:29:45.143 に答える
-1

このリソースは、Ubuntu でスリムを使用するために構成する必要があるすべてを説明しています (404 問題を解決するのに役立ちました)。

要約すると、設定することが 2 つあります。

  1. mod_rewrite を有効にするa2enmod rewrite
  2. Apache 構成ファイルを変更AllowOverride Noneします (AllowOverride All ドキュメント ルートの に変更します)。

変更後にapache2を再起動することを忘れないでください:service apache2 restart

Ubuntu 14.04 に Slim Framework をインストールして構成する方法

于 2016-08-30T11:12:23.457 に答える