0

.htaccess ファイルを適用するたびに、「500 内部サーバー エラー」が表示されます。空のコード .htaccess ファイルを配置すると、完全に実行されます。以下のコードを書いた場合、エラーが表示されます.My .htaccessコードは

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^user/(.*)/(.*)/$ user/searchUsrResult.php?selFindUsrCity=$1&txtFindUSrAreaRzip=$2 [L,NC]
4

3 に答える 3

1

Carlos が述べたように、RewriteRule に問題はなく、mod_wrewrite が無効になっています。WAMP を使用している場合は、httpd.conf の行のコメントを外して編集することで有効にできます。

LoadModule rewrite_module modules/mod_rewrite.so

また、Andrew が言ったように、AllowOverride ALL があることを確認してください。httpd.conf で DocumentRoot を検索して見つけ、それが

AllowOverride All

以内<Directory /> </Directory>

于 2013-02-22T11:28:56.583 に答える
0

Apache の設定でオーバーライドが無効になっている可能性があります。

AllowOverride None

変更してみて、問題が解決したかどうかを確認してください。

AllowOverride All 

この設定の完全なオプションについては、http: //httpd.apache.org/docs/2.2/mod/core.html#allowoverrideを参照してください。

VHOSTS を使用している場合は、VHOST ブロック内のブロック内でこの設定を変更できます。

于 2013-02-22T11:06:41.197 に答える
0

に問題は見られないRewriteRuleため、可能性の高い問題は、mod_rewrite有効になっていないことです。

Ubuntu または Debian (またはその他の Debian 派生物) を実行している場合は、(root として、または を使用して) 実行しますsudo

a2enmod rewrite
service apache2 restart

また、AllowOverrideアンドリューが提案したように値を確認してください。ただし、エラー 500 をスローする代わりに、RewriteRule を無視するだけです。

于 2013-02-22T11:08:01.180 に答える