Skip to content

Expose FastCGI services #8184

@sigv

Description

@sigv

Is your feature request related to a problem? Please describe.
We have PHP applications in our Kubernetes clusters, running with FastCGI Process Manager (FPM). We would like to expose them via Nginx Ingress Controller. However, there is currently no support for FastCGI (fCGI) proxying by the ingress controller. So we (frustratingly) have to manually spin up separate nginx Pods (next to the PHP application) as a proxy between Ingress Controller and application.

Describe the solution you'd like
We would like to have an option to define backends/upstreams as using FastCGI. This would then have Ingress Controller use module ngx_http_fastcgi_module with fastcgi_pass directive, instead of current module ngx_http_proxy_module with proxy_pass directive usage. Other relevant fCGI options/directives should be suppliable, such as setting fastcgi_index and fastcgi_param key-values.

Configuration would probably be implemented as a fastcgi sub-key in the upstreams objects. This could be a VirtualServer/VirtualServerRoute exclusive feature, to avoid Ingress annotation parsing complexity.

Describe alternatives you've considered
New functionality request, where the primary alternative (current workaround) is manually configured reverse proxy with HTTP frontend and fCGI backend. Configuration options could be managed in various ways, and I personally do not have one "best" method in mind as it's a question of how to best parse and validate it, and then have it as a switch between proxy_pass and fastcgi_pass.

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlog candidatePull requests/issues that are candidates to be backlog itemsproposalAn issue that proposes a feature request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions