首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向大量vhost中添加apache重写规则

向大量vhost中添加apache重写规则
EN

Server Fault用户
提问于 2012-05-21 11:48:13
回答 2查看 588关注 0票数 0

为了解决安全问题,我需要在所有虚拟主机配置中添加一些重写规则。

除了对每个虚拟主机声明进行更新外,还有哪些选项可以为所有虚拟主机声明添加重写规则?

更新:

参考文档状态:请注意,重写配置不是由虚拟主机继承的。这意味着,对于希望使用重写规则的每个虚拟主机,都需要有一个RewriteEngine on指令。

我不确定这是否意味着虚拟主机没有考虑到一般的重写规则。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2012-05-21 12:53:44

您能在vhost配置中使用include指令并将重写规则放在单独的文件中吗?

您可以使用sed大量编辑vhost配置文件:

代码语言:javascript
复制
sed -i.bak '/matchstring/ a\
include /some/where/rewrite.conf' /etc/apache2/vhosts/*.conf

此命令将在所有/etc/apache2/vhost/*..conf文件中每次出现include /some/where/rewrite.conf后插入行matchstring

票数 1
EN

Server Fault用户

发布于 2012-05-21 11:59:43

重写必须进入vhost,还是可以将重写规则(S)放在主httpd.conf文件中?那里的重写适用于所有请求,而不管它们应用于哪个vhost。

如果它们必须进入vhost,那么重写过程是完全相同还是依赖于vhost/ServerName/ServerAlias?如果每个文件中重写的内容完全相同,则可以使用sed -i修改任意数量的文件。

如果重写需要在每个文件中不同(或者vhost都不同),那么可能没有简单的方法。您可能可以在bash循环中再次使用sed -i来处理文件的名称,但是如果不知道您需要进行的更改的具体细节,我们就没有什么可推荐的了。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/391019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档