3

似たような投稿がたくさんありますが、私はそれらをすべて無駄に読みました. 誰かがこの問題を解決できることを願って、私の状況を説明させてください。次の .htaccess ファイルが /Users/myusername/Sites/domain.com/public_html/.htaccess にあります。DocumentRoot は /Users/myusername/Sites/domain.com/public_html に設定されています。

RewriteEngine on
options +FollowSymLinks

RewriteBase /demo 
RewriteRule ^/demo/evaluate/1$ /demo/evaluate/index.php?eval_id=1 [L]

設定は次のとおりです。

  1. httpd.conf の「LoadModule rewrite_module modules/mod_rewrite.so」はコメント解除されています。
  2. どこでも「AllowOverride All」

htaccess リダイレクトは機能しますが、何らかの理由で、エラー ログに次のエラーが表示され続けます。

[Sun Apr 22 11:14:09 2012] [error] [client ::1] File does not exist: /Users/myusername/Sites/domain.com/public_html/demo/evaluate/1

さらに情報が必要な場合はお知らせください。


正直なところ、何が起こったのかわかりません。私は何も変えませんでした。

すべての設定とフィードバックの魔法のような組み合わせだったのかもしれません。しかし、今では機能しています。それは、うっかりまた壊してしまうまで一歩下がって驚嘆するトランプの家のようなものです。

4

2 に答える 2

0

RewriteRuleを次のように変更してみてください。

RewriteRule ^demo/evaluate/1$ demo/evaluate/index.php?eval_id=1 [NC,QSA,L]
于 2012-04-23T05:47:23.040 に答える
0

この2行を確認してください

RewriteBase /demo 
RewriteRule ^/demo/evaluate/$1 /demo/evaluate/index.php?eval_id=$1 [L]
于 2012-06-01T11:35:38.890 に答える