From 1399e2b8de648e9f148208155b0a7784ca82363e Mon Sep 17 00:00:00 2001 From: F4ilji Date: Thu, 17 Apr 2025 21:50:21 +0500 Subject: [PATCH] splitting nginx configuration into prod and local --- _docker/nginx/local/conf.d/nginx.conf | 48 ++++++++++++++++++ _docker/nginx/prod/conf.d/nginx.conf | 50 +++++++++++++++++++ docker-compose.yml | 4 +- .../pages/components/PageSubSectionLinks.vue | 8 --- 4 files changed, 101 insertions(+), 9 deletions(-) create mode 100644 _docker/nginx/local/conf.d/nginx.conf create mode 100644 _docker/nginx/prod/conf.d/nginx.conf diff --git a/_docker/nginx/local/conf.d/nginx.conf b/_docker/nginx/local/conf.d/nginx.conf new file mode 100644 index 0000000..cfe5efd --- /dev/null +++ b/_docker/nginx/local/conf.d/nginx.conf @@ -0,0 +1,48 @@ +server { + client_max_body_size 200M; # Максимальный размер тела запроса + large_client_header_buffers 4 128k; # Размеры буферов для заголовков + + root /var/www/public; + + location / { + add_header Access-Control-Allow-Origin *; # Заголовок для CORS + try_files $uri /index.php?$args; # Обработка запросов + } + + + + location /sveden/ { + alias /var/www/public/sveden/; + index index.html; + try_files $uri $uri/ /sveden/index.html; # Обработка статических файлов + } + + location = /sveden { + return 301 /sveden/; + } + + location ~ \.php$ { + try_files $uri =404; # Если файл не найден, возвращаем 404 + fastcgi_split_path_info ^(.+\.php)(/.+)$; # Разделение пути + fastcgi_pass app:9000; # Указываем сервер PHP-FPM + fastcgi_index index.php; # Индексный файл + include fastcgi_params; # Включаем параметры FastCGI + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # Путь к скрипту + fastcgi_param PATH_INFO $fastcgi_path_info; # Информация о пути + fastcgi_buffers 16 16k; # Увеличение буферов FastCGI + fastcgi_buffer_size 32k; # Размер буфера FastCGI + } + + # Защита от доступа к конфиденциальным файлам + location ~ /\.ht { + deny all; # Запрет доступа к файлам .htaccess + } + + # Настройки кэширования для статических файлов + location ~* \.(css|js|jpg|jpeg|png|gif|ico|svg|woff|woff2|ttf|otf)$ { + expires 30d; # Кэширование на 30 дней + add_header Cache-Control "public, no-transform"; # Заголовок кэширования + } + + +} diff --git a/_docker/nginx/prod/conf.d/nginx.conf b/_docker/nginx/prod/conf.d/nginx.conf new file mode 100644 index 0000000..8454131 --- /dev/null +++ b/_docker/nginx/prod/conf.d/nginx.conf @@ -0,0 +1,50 @@ +server { + client_max_body_size 200M; # Максимальный размер тела запроса + large_client_header_buffers 4 128k; # Размеры буферов для заголовков + + root /var/www/public; + + location / { + add_header Access-Control-Allow-Origin *; # Заголовок для CORS + try_files $uri /index.php?$args; # Обработка запросов + } + + + + location /sveden/ { + alias /var/www/public/sveden/; + index index.html; + try_files $uri $uri/ /sveden/index.html; # Обработка статических файлов + } + + location = /sveden { + return 301 /sveden/; + } + + location ~ \.php$ { + try_files $uri =404; # Если файл не найден, возвращаем 404 + fastcgi_split_path_info ^(.+\.php)(/.+)$; # Разделение пути + fastcgi_pass app:9000; # Указываем сервер PHP-FPM + fastcgi_index index.php; # Индексный файл + include fastcgi_params; # Включаем параметры FastCGI + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # Путь к скрипту + fastcgi_param PATH_INFO $fastcgi_path_info; # Информация о пути + fastcgi_buffers 16 16k; # Увеличение буферов FastCGI + fastcgi_buffer_size 32k; # Размер буфера FastCGI + fastcgi_param REQUEST_SCHEME https; + fastcgi_param HTTPS On; + } + + # Защита от доступа к конфиденциальным файлам + location ~ /\.ht { + deny all; # Запрет доступа к файлам .htaccess + } + + # Настройки кэширования для статических файлов + location ~* \.(css|js|jpg|jpeg|png|gif|ico|svg|woff|woff2|ttf|otf)$ { + expires 30d; # Кэширование на 30 дней + add_header Cache-Control "public, no-transform"; # Заголовок кэширования + } + + +} diff --git a/docker-compose.yml b/docker-compose.yml index 9642db6..ff6e4e8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,12 +4,14 @@ services: image: nginx:1.27.2 volumes: - ./:/var/www - - ./_docker/nginx/conf.d/:/etc/nginx/conf.d/ + - ./_docker/nginx/${NGINX_ENV}/conf.d/:/etc/nginx/conf.d/ ports: - "80:80" container_name: ntspi-nginx depends_on: - app + env_file: + - .env app: build: diff --git a/resources/js/componentss/features/pages/components/PageSubSectionLinks.vue b/resources/js/componentss/features/pages/components/PageSubSectionLinks.vue index 49a9344..8d82e6f 100644 --- a/resources/js/componentss/features/pages/components/PageSubSectionLinks.vue +++ b/resources/js/componentss/features/pages/components/PageSubSectionLinks.vue @@ -37,14 +37,6 @@ export default { } }, methods: { - textLimit(text, symbols) { - if (text.length > symbols) { - let LimitedText - LimitedText = text.substring(0, symbols) - return LimitedText + "..." - } - return text - }, isSameRoute(route) { if (this.$page.props.ziggy.location === this.$page.props.ziggy.url + '/' + route) { return true