是否需要重新启动apache服务并对重写映射文件进行任何更改?

是否需要重新启动apache服务并对重写映射文件进行任何更改?,apache,mod-rewrite,rewritemap,Apache,Mod Rewrite,Rewritemap,我在RewriteMap指令中使用一个perl脚本文件作为映射文件。 由于我在开始时阅读了apache加载脚本一次,因此在对该脚本文件进行任何更改后是否需要重新加载或重新启动apache?是,只有在apache启动时才会注册。当使用外部程序作为重写映射(即映射类型pgr)时,程序文件需要锁定: 此指令为mod_rewrite需要与RewriteMap程序通信的同步锁文件设置文件名。如果要使用重写映射程序,请将此锁定文件设置为本地路径(不在安装了NFS的设备上)。其他类型的重写映射不需要它 但其他

我在RewriteMap指令中使用一个perl脚本文件作为映射文件。 由于我在开始时阅读了apache加载脚本一次,因此在对该脚本文件进行任何更改后是否需要重新加载或重新启动apache?

是,只有在apache启动时才会注册。当使用外部程序作为重写映射(即映射类型
pgr
)时,程序文件需要锁定:

此指令为mod_rewrite需要与
RewriteMap
程序通信的同步锁文件设置文件名。如果要使用重写映射程序,请将此锁定文件设置为本地路径(不在安装了NFS的设备上)。其他类型的重写映射不需要它

但其他贴图类型可以在以后更改:

对于纯文本和DBM格式文件,查找的密钥将缓存在core中,直到mapfile的mtime更改或服务器重新启动。这样,您就可以在规则中使用映射函数,用于每个请求。这没有问题,因为外部查找只发生一次


我不确定上面的回答是否正确,重新加载似乎没问题

您可以执行“ps aux | grep YOUR_REWRITE_PROGRAM”(ps aux | grep YOUR_REWRITE_PROGRAM)检查重写映射程序的PID/启动时间

ApacheReload似乎为这些进程设置了一个新的PID/启动时间,所以我假设新进程已经启动,重新加载就可以了