この記事では、phpstudyでApacheのmod_rewriteを可能にします。 httpd.confの構成をモジュールにロードし、AllowoverRideを介して.htaccessを有効にし、Apacheの再起動について説明します。間違ったパスや忘れられた再起動などの一般的なエラーは広告です
PHPStudyのmod_rewrite
を有効にするには、主にPHPStudyのApacheインストール内の構成ファイルに焦点を当てるいくつかの簡単な手順が含まれます。これらのファイルの正確な位置は、PHPStudyバージョンによってわずかに異なる場合がありますが、通常、PHPStudyインストールディレクトリ内で見つかります。まず、通常はhttpd.conf
またはapache2.conf
という名前のApache構成ファイルを見つけます。このファイルは、Apacheの動作とモジュールの読み込みを制御します。
次に、 mod_rewrite
モジュールをロードする行を除外(行の先頭にある#
シンボルを削除する)必要があります。この行は通常LoadModule rewrite_module modules/mod_rewrite.so
のように見えます。 mod_rewrite.so
への正確なパスは、phpstudyのインストールに基づいて異なる場合があるため、その場所を再確認してください。行が完全に欠落している場合は、 httpd.conf
ファイルに手動で追加する必要があります。モジュールへのパスが正しいことを確認します。
最後に、 .htaccess
ファイルの使用を有効にする必要があります。これは通常、Webサイトのルートディレクトリに関連する<directory></directory>
ブロック内に次の行を解除または追加することによって行われます: AllowOverride All
。この行は、 .htaccess
ファイルに、書き換えルールを制御するために必要な権限を付与します。これらの変更を行った後、 httpd.conf
ファイルを保存します。その後、変更が有効になるには、Apacheサーバーを再起動する必要があります。これは通常、phpstudyコントロールパネルを介して行われます。
いくつかの一般的な落とし穴は、phpstudyのmod_rewrite
の成功を妨げる可能性があります。頻繁なエラーは、 httpd.conf
ファイルのmod_rewrite.so
モジュールへの誤ったパスです。パスを常に確認すると、phpstudyインストール内のモジュールの位置を正確に反映してください。シンプルなタイプミスは、モジュールの読み込みを防ぐことができます。
別の一般的な間違いは、 httpd.conf
ファイルを変更した後、Apacheサーバーを再起動するのを忘れることです。 Apacheは、適用する変更の構成をリロードする必要があります。ファイルを保存するだけでは不十分です。サーバーを明示的に再起動する必要があります。
最後に、AllowoverRideを見落としてください<directory></directory>
ブロック内のAllowOverride All
ディレクティブは重要なエラーです。この指令がなければ、通常、書き換えルールを配置する.htaccess
ファイルは、正しく機能することができません。この行が存在し、関連する<directory></directory>
ブロック内で存在しないことを確認してください。通常、ウェブサイトのルートディレクトリを指しているブロックです。 .htaccess
ファイル自体の誤った権限も問題の原因となる可能性があります。ファイルにApacheユーザーの正しい読み取りアクセス許可があることを確認してください。
mod_rewrite
を有効にした後、その機能を検証することが重要です。最も単純な方法は、シンプルな書き換えルールを含むWebサイトのルートディレクトリに基本的な.htaccess
ファイルを作成することです。たとえば、次のコンテンツで.htaccess
という名前のファイルを作成します。
<code class="htaccess">RewriteEngine On RewriteRule ^test$ /test.php [L]</code>
このルールは、 /test.php
への/test
へのリクエストをリダイレクトします。次に、いくつかのコンテンツを含む同じディレクトリにtest.php
という名前の簡単なファイルを作成します。たとえば
<code class="php"><?php echo "mod_rewrite is working!"; ?></code>
http://localhost/test
(またはWebサイトのURL)などのURLを使用してWebサイトにアクセスします。 mod_rewrite
が正しく機能している場合、「mod_rewriteが機能している!」というテキストが表示されるはずです。ページに表示されます。 404エラーまたはtest.php
の生の内容が表示されている場合、構成の問題を示します。 .htaccess
ファイルを構文エラーについて確認し、 RewriteEngine
がオンになり、 AllowOverride All
Apache構成で正しく設定されていることを確認してください。より複雑な書き換えルールを使用して、それを徹底的にテストすると、機能をさらに検証できます。
残念ながら、Apacheサーバーを再起動せずにphpstudyでmod_rewrite
直接有効にすることは通常不可能です。 Apacheは、 httpd.conf
ファイルに加えられた変更を認識するように構成をリロードする必要があります。これには、サーバーの再起動が必要です。一部のApache構成は動的なリロード機能を提供しますが、phpstudyのデフォルトセットアップには通常、この機能は含まれません。再起動せずに変更を適用しようとすると、予測不可能な結果につながるか、サーバーを一貫性のない状態にしたままにする可能性があります。したがって、Apacheサーバーの再起動は、変更が適切に実装され、サーバーが安定していることを確認するための推奨された信頼できるアプローチです。再起動にかかる時間は最小限であり、代替方法を試すことに関連するリスクを上回ります。
以上がphpstudy内のApacheでURL書き換え(mod_rewrite)を有効にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。