是否有任何理由(安全,性能等),我不应该在Apache生产环境中使用.htaccess?
Apache的官方build议是避免使用.htaccess除非是绝对必要的。
如果AllowOverride被设置为None以外的None ,那么系统接收到的启用了AllowOverride的上下文的每个请求都将导致Apache进程检查文件系统树中可能包含.htaccess每个部分中的.htaccess文件这将适用于当前的请求。
看到这里 :
一般来说,除非不能访问主服务器configuration文件,否则不应该使用.htaccess文件。 例如,有一个普遍的错误观念认为用户身份validation应该始终在.htaccess文件中完成。 这根本不是那么回事。 您可以将用户身份validationconfiguration置于主服务器configuration中,事实上,这是做事情的首选方式。
.htaccess文件应在内容提供者需要对每个目录进行configuration更改的情况下使用,但在服务器系统上没有root权限。 如果服务器pipe理员不愿意经常进行configuration更改,可能需要允许个别用户在.htaccess文件中为自己做出这些更改。 例如,如果ISP在单台机器上托pipe多个用户站点,并希望用户能够更改其configuration,则情况尤其如此。
但是,一般情况下,尽可能避免使用.htaccess文件。 您可能会考虑放入.htaccess文件的任何configuration都可以在您的主服务器configuration文件的一个部分中进行。
这取决于你的要求。
存在.htaccess机制的技术原因是,站点pipe理员以外的人可以更改他们控制的本地configuration,而无需访问全局apache服务器configuration。
它与安全性没有太大的关系,但是使用许多.htaccess文件会影响性能。