3

虽然有很多类似的帖子,但我都阅读了它们都无济于事。让我描述一下我的情况,希望有人可以解决这个问题。我在 /Users/myusername/Sites/domain.com/public_html/.htaccess 中有以下 .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

你能检查这两行并检查吗

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