Supported versions:
Unsupported versions:
This topic explains how to enable non-SNI clients, HTTP clients, and a combination of both for use with Apigee hybrid.
enableNonSniClient
is set to true:
apiVersion: apigee.cloud.google.com/v1alpha1
kind: ApigeeRoute
metadata:
name: route_name
namespace: apigee
spec:
hostnames:
- "*"
ports:
- number: 443
protocol: HTTPS
tls:
credentialName: credential_name
mode: SIMPLE
#optional
minProtocolVersion: TLS_AUTO
selector:
app: istio-ingressgateway
enableNonSniClient: true
Where:
hostnames must be set to the wildcard "*".
additionalGateways
property. For example:
virtualhosts:
- name: default
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.pem
additionalGateways: ["route_name"]ApigeeRoute.yamlkubectl apply -f ApigeeRoute.yaml -n apigee
virtualhosts:
$APIGEECTL_HOME/apigeectl apply -f overrides.yaml --settings virtualhosts --env $ENVIRONMENT
Since the ingress is at the cluster level for a given port (443), and there can only be one key/cert pair for the ApigeeRoute CRD, all orgs must share the same key/cert pair.
All hostnames across all environment groups must use the same key/cert pair.
ApigeeRoutes can be validated by Apigee; however, Gateway (the Istio CRD) cannot be. Technically, even Gateway can work, but we can prevent potential configuration mistakes (through a validation webhook).
This section explains support for HTTP clients for use with Apigee hybrid.
apiVersion: apigee.cloud.google.com/v1alpha1
kind: ApigeeRoute
metadata:
name: route_name
namespace: apigee
spec:
hostnames:
- "*"
ports:
- number: 80
protocol: HTTP
selector:
app: istio-ingressgateway
enableNonSniClient: trueWhere:
hostnames must be set to the wildcard "*".
additionalGateways
property. For example:
virtualhosts:
- name: default
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.pem
additionalGateways: ["route_name"]ApigeeRoute.yamlkubectl apply -f ApigeeRoute.yaml -n apigee
virtualhosts:
$APIGEECTL_HOME/apigeectl apply -f overrides.yaml --settings virtualhosts --env $ENVIRONMENT
This section explains how to enable both non-SNI (port 443) and HTTP (port 80) clients for use with Apigee hybrid.
apiVersion: apigee.cloud.google.com/v1alpha1
kind: ApigeeRoute
metadata:
name: route_name
namespace: apigee
spec:
hostnames:
- "*"
ports:
- number: 443
protocol: HTTPS
tls:
credentialName: credential_name
mode: SIMPLE
#optional
minProtocolVersion: TLS_AUTO
- number: 80
protocol: HTTP
selector:
app: istio-ingressgateway
enableNonSniClient: trueWhere:
hostname must be set to the wildcard "*".
additionalGateways
property. For example:
virtualhosts:
- name: default
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.pem
additionalGateways: ["route_name"]ApigeeRoute.yamlkubectl apply -f ApigeeRoute.yaml -n apigee
virtualhosts:
$APIGEECTL_HOME/apigeectl apply -f overrides.yaml --settings virtualhosts --env $ENVIRONMENT
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-06-11 UTC.