| 119 | return self |
| 120 | |
| 121 | def add_certificate(self, cert_file, key_file, ssl_module=None): |
| 122 | if ssl_module is None: |
| 123 | ssl_module = self.env.ssl_module |
| 124 | if ssl_module == 'mod_ssl': |
| 125 | self.add([ |
| 126 | f"SSLCertificateFile {cert_file}", |
| 127 | f"SSLCertificateKeyFile {key_file if key_file else cert_file}", |
| 128 | ]) |
| 129 | elif ssl_module == 'mod_tls': |
| 130 | self.add(f"TLSCertificate {cert_file} {key_file if key_file else ''}") |
| 131 | elif ssl_module == 'mod_gnutls': |
| 132 | self.add([ |
| 133 | f"GnuTLSCertificateFile {cert_file}", |
| 134 | f"GnuTLSKeyFile {key_file if key_file else cert_file}", |
| 135 | ]) |
| 136 | else: |
| 137 | raise Exception(f"unsupported ssl module: {ssl_module}") |
| 138 | |
| 139 | def add_vhost(self, domains, port=None, doc_root="htdocs", with_ssl=None, |
| 140 | with_certificates=None, ssl_module=None): |