58 lines
1.4 KiB
Plaintext
58 lines
1.4 KiB
Plaintext
# Internal Nginx Configuration for Sibedas PBG Web
|
|
# This configuration is for the internal container, accessed by reverse proxy
|
|
|
|
server {
|
|
listen 80;
|
|
server_name localhost;
|
|
|
|
# Root directory
|
|
root /var/www/public;
|
|
index index.php index.html index.htm;
|
|
|
|
# Handle Laravel routes
|
|
location / {
|
|
try_files $uri $uri/ /index.php?$query_string;
|
|
}
|
|
|
|
# PHP-FPM configuration
|
|
location ~ \.php$ {
|
|
fastcgi_pass 127.0.0.1:9000;
|
|
fastcgi_index index.php;
|
|
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
|
|
include fastcgi_params;
|
|
|
|
# FastCGI optimizations
|
|
fastcgi_buffers 16 16k;
|
|
fastcgi_buffer_size 32k;
|
|
fastcgi_connect_timeout 300;
|
|
fastcgi_send_timeout 300;
|
|
fastcgi_read_timeout 300;
|
|
}
|
|
|
|
# Static files caching
|
|
location ~* \.(jpg|jpeg|png|gif|ico|css|js|pdf|txt)$ {
|
|
expires 1y;
|
|
add_header Cache-Control "public, immutable";
|
|
access_log off;
|
|
}
|
|
|
|
# Deny access to sensitive files
|
|
location ~ /\. {
|
|
deny all;
|
|
}
|
|
|
|
location ~ /\.ht {
|
|
deny all;
|
|
}
|
|
|
|
# Health check endpoint
|
|
location /health-check {
|
|
access_log off;
|
|
return 200 "healthy\n";
|
|
add_header Content-Type text/plain;
|
|
}
|
|
|
|
# Logging
|
|
access_log /var/log/nginx/sibedas_internal_access.log;
|
|
error_log /var/log/nginx/sibedas_internal_error.log;
|
|
} |