为什么我的htaccessredirect工作?

我已经设置了一个简单的htaccessredirect,看起来像这样(这是整个.htaccess文件):

Options +FollowSymLinks RewriteEngine On Redirect 301 /something http://something.com/something.php 

如果我然后加载包含这个.htaccess的网站,即myredirectsite.com/something我最终以下404:

 The requested URL /something was not found on this server. Apache/2.2.3 (Red Hat) Server at myredirectsite.com Port 80 

和日志:

[星期二七月10 14:25:46 2012] [错误] [客户端xx.xx.xxx.xx]文件不存在:/ home / sites / scp / something

有些东西不是文件,有些东西不存在。 我假设我可以使用redirect相同的重写,但它看起来像redirect需要为一个文件,实际上存在?

我创build了文件“东西”,它只是试图加载空白文件。 没有redirect。

我错过了什么工作?

确保

 AllowOverride All 

在httpd.conf文件中设置!

但是,如果你有权访问主configuration文件,我build议在那里进行configuration,而不是在.htaccess文件中.htaccess文件会减慢服务器的速度。 如果您的服务器负载非常低,这可能不是问题,但即使在较小的项目中也可以使用最佳实践。

我的httpd.conf文件未在此服务器上configuration为站点目录中的AllowOverride。 它被设置为“无”,我改变了:

 AllowOverride All