| 229 | return self |
| 230 | |
| 231 | def add_vhost_cgi(self, proxy_self=False, h2proxy_self=False): |
| 232 | domain = f"cgi.{self.env.http_tld}" |
| 233 | if proxy_self: |
| 234 | self.add(["ProxyStatus on", "ProxyTimeout 5", |
| 235 | "SSLProxyEngine on", "SSLProxyVerify none"]) |
| 236 | if h2proxy_self: |
| 237 | self.add(["SSLProxyEngine on", "SSLProxyCheckPeerName off"]) |
| 238 | self.start_vhost(domains=[domain, f"cgi-alias.{self.env.http_tld}"], |
| 239 | port=self.env.https_port, doc_root="htdocs/cgi") |
| 240 | self.add_proxies("cgi", proxy_self=proxy_self, h2proxy_self=h2proxy_self) |
| 241 | self.end_vhost() |
| 242 | self.start_vhost(domains=[domain, f"cgi-alias.{self.env.http_tld}"], |
| 243 | port=self.env.http_port, doc_root="htdocs/cgi") |
| 244 | self.add("AddHandler cgi-script .py") |
| 245 | self.add_proxies("cgi", proxy_self=proxy_self, h2proxy_self=h2proxy_self) |
| 246 | self.end_vhost() |
| 247 | return self |
| 248 | |
| 249 | @staticmethod |
| 250 | def merge_extras(e1: Dict[str, Any], e2: Dict[str, Any]) -> Dict[str, Any]: |