【问题标题】:Rewrite conditions and rules in Virtual host or .htaccess? Which is preferred?重写虚拟主机或.htaccess 中的条件和规则?哪个是首选?
【发布时间】:2017-10-19 04:53:54
【问题描述】:

我正在使用apache 2.4 并托管angular2 应用程序。我已经在我的虚拟主机本身中编写了rewrite rules and conditions,但我想知道是否应该使用.htaccess 文件。使用其中一个有什么好处?

编辑:添加 .htaccess

我尝试为 angular2 实现.htaccess,看来我必须手动将.htaccess 粘贴到dist 文件夹中。这会很糟糕。但是,我仍然要求这是一个通用应用程序。应该首选哪种配置?是在virtual host中配置还是单独.htaccess

【问题讨论】:

    标签: apache .htaccess angular mod-rewrite virtualhost


    【解决方案1】:

    我看了这个apache documentation,这几乎消除了我的困惑。

    如果不经常更换rewrite configurations,文档建议不要使用.htaccess

    可能需要更改这些,例如:

    .htaccess 文件应该用于内容提供者需要在每个目录的基础上对服务器进行配置更改,但在服务器系统上没有 root 访问权限的情况。如果服务器管理员不愿意进行频繁的配置更改,可能需要允许单个用户自己在 .htaccess 文件中进行这些更改。例如,在 ISP 在一台机器上托管多个用户站点并希望其用户能够更改其配置的情况下尤其如此。

    为什么不使用?

    1. 首先是性能。当 AllowOverride 设置为允许使用 .htaccess 文件时,httpd 将在每个目录中查找 .htaccess 文件。因此,允许 .htaccess 文件会导致性能下降,无论您是否实际使用它们!此外,每次请求文档时都会加载 .htaccess 文件。

    2. 在 RewriteRule 指令的情况下,在 .htaccess 上下文中这些 每次请求都必须重新编译正则表达式 目录,而在主服务器配置上下文中,它们是 编译一次并缓存。

    【讨论】:

      猜你喜欢
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-24
      • 2011-10-02
      • 2016-08-13
      • 1970-01-01
      相关资源
      最近更新 更多