我的PHP文件存放在FreeBSD下的这个目录下:
/home/david/public_html/code/php
在我的浏览器中,我通过以下网址访问它们:
http://192.168.6.7/~david/code/php
我有一个htaccess文件来重写URL:
RewriteEngine on
RewriteRule ^test test.php
但是当我在浏览器中转到http://192.168.6.7/~david/code/php/test时,我收到此错误:
Not Found
The requested URL /home/david/public_html/code/php/test.php
如您所见,重写规则成功尝试将测试重定向到test.php。但由于某种原因,它失败了。
我在我的apache错误日志文件中找到了这个:
File does not exist: /usr/local/www/data/home
任何人都知道如何解决这个问题? 顺便说一下,如果我把它放在一个web目录而不是我的主目录中,一切正常。
答案 0 :(得分:5)
使用RewriteBase
将基本网址路径设置为/~david/code/php/
:
RewriteBase /~david/code/php/
您还应明确将UseDir
设置为public_html
。另请参阅Per-user web directories in the Apache manual。