Задать вопрос
  • Запрет обращения к файлу напрямую | Где ошибка?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Lynn «Кофеман», с server_names тоже не хочет...
    server {
    	server_name .....;
    	charset UTF-8;
    	index index.php;
    	disable_symlinks if_not_owner from=$root_path;
    	include /etc/nginx/vhosts-includes/*.conf;
    	include /etc/nginx/vhosts-resources/...../*.conf;
    	set $root_path /var/www/www-root/data/www/.....;
    	root $root_path;
    	gzip on;
    	gzip_comp_level 3;
    	gzip_disable "msie6";
    	gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;
    	error_log /var/www/httpd-logs/......error.log warn;
    
    	location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|svg|ttf)$ {
    		expires 180d;
    	}
    
    	location / {
    		rewrite ^([^.\?]*[^/])$ $1/ permanent; # Добавление слеша в конце URL, если его там нет
    		try_files $uri /index.php?do=$uri;
    		location ~ [^/]\.ph(p\d*|tml)$ {
    			try_files /does_not_exists @php;
    		}
    	}
    
    	# Удаление лишних слешев
    	if ($request_uri ~ "//") {
    		return 301 $uri;
    	} # End: Удаление лишних слешев
    
    	# Удаление "page_0" | "page_1" из URL
    	location ~* ^(.*)/page_(0|1)/$ {
    		return 301 $1/;
    	} # End: Удаление "page_0" | "page_1" из URL
    
    	location @php {
    		fastcgi_index index.php;
    		fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f danfa@.....";
    		fastcgi_pass unix:/var/www/php-fpm/1.sock;
    		fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
    		try_files $uri =404;
    		include fastcgi_params;
    		include /etc/nginx/vhosts-resources/...../dynamic/*.conf;
    	}
    
    	location ~* /app/\d+/data/ {
    		valid_referers server_names;
    		if ($invalid_referer) {
    			return 403;
    		}
    	}
    
    	error_page 404 $page_error;
    	error_log /var/www/httpd-logs/.....error.log notice;
    	return 301 https://$host:443$request_uri;
    	access_log off;
    	listen ......;
    	listen .....;
    }
    server {
    	server_name .....;
    	ssl_certificate "/var/www/httpd-cert/www-root/......_le2.crtca";
    	ssl_certificate_key "/var/www/httpd-cert/www-root/......._le2.key";
    	ssl_ciphers EECDH:+AES256:-3DES:RSA+AES:!NULL:!RC4;
    	ssl_prefer_server_ciphers on;
    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    	add_header Strict-Transport-Security "max-age=31536000;";
    	ssl_dhparam /etc/ssl/certs/dhparam4096.pem;
    	charset UTF-8;
    	index index.php;
    	disable_symlinks if_not_owner from=$root_path;
    	include /etc/nginx/vhosts-includes/*.conf;
    	include /etc/nginx/vhosts-resources/...../*.conf;
    	error_log /var/www/httpd-logs/......error.log notice;
    	set $root_path /var/www/www-root/data/www/.....;
    	root $root_path;
    	gzip on;
    	gzip_comp_level 3;
    	gzip_disable "msie6";
    	gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;
    
    	location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|svg|ttf)$ {
    		expires 180d;
    	}
    
    	location / {
    		rewrite ^([^.\?]*[^/])$ $1/ permanent; # Добавление слеша в конце URL, если его там нет
    		try_files $uri /index.php?do=$uri;
    		location ~ [^/]\.ph(p\d*|tml)$ {
    			try_files /does_not_exists @php;
    		}
    	}
    
    	# Удаление лишних слешев
    	if ($request_uri ~ "//") {
    		return 301 $uri;
    	} # End: Удаление лишних слешев
    
    	# Удаление "page_0" | "page_1" из URL
    	location ~* ^(.*)/page_(0|1)/$ {
    		return 301 $1/;
    	} # End: Удаление "page_0" | "page_1" из URL
    
    	location @php {
    		fastcgi_index index.php;
    		fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f .....";
    		fastcgi_pass unix:/var/www/php-fpm/1.sock;
    		fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
    		try_files $uri =404;
    		include fastcgi_params;
    		include /etc/nginx/vhosts-resources/...../dynamic/*.conf;
    	}
    
    	location ~* /app/\d+/data/ {
    		valid_referers server_names;
    		if ($invalid_referer) {
    			return 403;
    		}
    	}
    
    	error_page 404 $page_error;
    	access_log off;
    	listen ..... ssl http2;
    	listen ..... ssl http2;
    }
    Написано
  • Запрет обращения к файлу напрямую | Где ошибка?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Правильно?
    location ~* /app/\d+/data/ {
    		valid_referers server_name;
    		if ($invalid_referer) {
    			return 403;
    		}
    	}

    Но, видимо, я неправильно пишу... Тоже не работает.
    Написано
  • Запрет обращения к файлу напрямую | Где ошибка?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Михаил Р., в логе только:
    2025/01/07 10:42:32 [notice] 28271#28271: signal process started
    Написано
  • Запрет обращения к файлу напрямую | Где ошибка?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Михаил Р., Вы про эту: "$invalid_referer"?
    Не знаю... Как проверить?

    Думаю, у меня нет "ngx_http_referer_module.so". Ищу.
    Написано
  • По правилам ли разные SVG файлы с одинаковыми ID?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Максим, спасибо!
    Напишите ответом, пожалуйста, я отмечу решение, Ваш ответ.
    Написано
  • Как выводить JS код?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Благодарю!
    $('#display').html('<a href="#" onclick="$.ajaxCall(\'app.screenChange\', \'appID={app:id}&amp;page=1\', \'GET\'); return false;">Go</a>');

    Мне надо было экранировать только одинарные кавычки, как оказалось... А я экранировал все подряд, из за чего получал ошибку.
    Написано
  • Как выводить JS код?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Adamos, знаю, и знаю, что дело именно в одинарных кавычках. Дело в том, что мне нужно без экранирования, иначе вставляемый код не будет работать на странице....
    Написано
  • GigaByte WINDFORCE GTX 960 4 GB: Почему вентиляторы постоянно крутятся?

    Slash-Zn
    @Slash-Zn Автор вопроса
    // Смотрел в интернете должны крутиться или нет?
    Смотрел. Не должны крутиться.
    Написано
  • Как задержать появление меню?

    Slash-Zn
    @Slash-Zn Автор вопроса
    DIVSIDE, отметил.
  • Как задержать появление меню?

    Slash-Zn
    @Slash-Zn Автор вопроса
    DIVSIDE, я как буду у своего компа, после работы, проверю и конечно отмечу!

    Сейчас на работе, проверить не могу.

    Спасибо.
  • Как задержать появление меню?

    Slash-Zn
    @Slash-Zn Автор вопроса
    JS тут не помогает. Меню не исчезает, тк блок categoryMenu, находится внутри блока categoryTag.
  • Как правильно обновлять файлы SVG в кэше браузера?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Спасибо. Так всё, как задумал.
  • Как правильно обновлять файлы SVG в кэше браузера?

    Slash-Zn
    @Slash-Zn Автор вопроса
    В $url.ico: "module.svg#idspr", как Вы сказали.
    Спасибо! Пробую.
  • Как добавить исключение?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Точно! Я сам малость запутался со своим кодом...
    Спасибо.
  • Две 404 страницы: для полной версии сайта и для мобильной?

    Slash-Zn
    @Slash-Zn Автор вопроса
    dodo512, то есть, чтобы добиться мной желаемого, лезть в Nginx не надо?

    Спасибо за разъяснение!
  • Две 404 страницы: для полной версии сайта и для мобильной?

    Slash-Zn
    @Slash-Zn Автор вопроса
    server {
    	server_name ... ;
    	charset UTF-8;
    	index index.php;
    	disable_symlinks if_not_owner from=$root_path;
    	include /etc/nginx/vhosts-includes/*.conf;
    	include /etc/nginx/vhosts-resources/.../*.conf;
    	set $root_path /var/www/www-root/data/www/...;
    	root $root_path;
    	gzip on;
    	gzip_comp_level 3;
    	gzip_disable "msie6";
    	gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;
    	error_log /var/www/httpd-logs/danfa.net.error.log warn;
    	location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|ttf)$ {
    		expires 180d;
    	}
    	location / {
    		try_files $uri /index.php?do=$uri;
    		location ~ [^/]\.ph(p\d*|tml)$ {
    			try_files /does_not_exists @php;
    		}
    	}
    	error_page 404 /error/404/;
    	error_log /var/www/httpd-logs/danfa.net.error.log notice;
    	location @php {
    		fastcgi_index index.php;
    		fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f ...";
    		fastcgi_pass unix:/var/www/php-fpm/1.sock;
    		fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
    		try_files $uri =404;
    		include fastcgi_params;
    		include /etc/nginx/vhosts-resources/.../dynamic/*.conf;
    	}
    	return 301 https://$host:443$request_uri;
    	access_log off;
    	listen ...;
    	listen ...;
    }
    server {
    	server_name ... ;
    	ssl_certificate "/var/www/httpd-cert/www-root/...le2.crtca";
    	ssl_certificate_key "/var/www/httpd-cert/www-root/...le2.key";
    	ssl_ciphers ...;
    	ssl_prefer_server_ciphers on;
    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    	add_header Strict-Transport-Security "max-age=31536000;";
    	ssl_dhparam /etc/ssl/certs/dhparam4096.pem;
    	charset UTF-8;
    	index index.php;
    	disable_symlinks if_not_owner from=$root_path;
    	include /etc/nginx/vhosts-includes/*.conf;
    	include /etc/nginx/vhosts-resources/.../*.conf;
    	error_log /var/www/httpd-logs/...error.log notice;
    	set $root_path /var/www/www-root/data/www/...;
    	root $root_path;
    	gzip on;
    	gzip_comp_level 3;
    	gzip_disable "msie6";
    	gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;
    	location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|ttf)$ {
    		expires 180d;
    	}
    	location / {
    		try_files $uri /index.php?do=$uri;
    		location ~ [^/]\.ph(p\d*|tml)$ {
    			try_files /does_not_exists @php;
    		}
    	}
    	location @php {
    		fastcgi_index index.php;
    		fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f danfa@danfa.net";
    		fastcgi_pass unix:/var/www/php-fpm/1.sock;
    		fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
    		try_files $uri =404;
    		include fastcgi_params;
    		include /etc/nginx/vhosts-resources/danfa.net/dynamic/*.conf;
    	}
    	error_page 404 /error/404/;
    	access_log off;
    	listen .... ssl http2;
    	listen .... ssl http2;
    }
  • Две 404 страницы: для полной версии сайта и для мобильной?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Lynn «Кофеман», в немногих старых постах остались ссылки на записи, которые были удалены. И вели они по адресу без mobile.
  • Две 404 страницы: для полной версии сайта и для мобильной?

    Slash-Zn
    @Slash-Zn Автор вопроса
    Lynn «Кофеман», интересно... Поищу, как можно проверить куки в Nginx. Но, если можете, покажите пример тут.
  • Как отследить прямое обращение к картинкам и выполнять php?

    Slash-Zn
    @Slash-Zn Автор вопроса
    SunTechnik, непрямое - когда картинка вставлена в страницу, и загружается страница.
    Прямое обращение - адрес самой картинки.