limit_req_dry_run on;
.location ~ \.php$
добавить fastcgi_param limit_req_status $limit_req_status;
.$_SERVER['limit_req_status']
будет приходить PASSED или REJECTED_DRY_RUN. location @имя { ... }
с нужными fastcgi_param или sub_filter.*.txt
обрабатывает сам, то правилами htaccess тут не решить.*.txt
, а когда файла с таким именем не нашлось, то проксирует запрос на Apache.RewriteRule ^robots\.txt$ robots_blabla.txt [L]
listen 80;
server_name www.example.com;
listen *:80;
server_name example.com;
listen *:443 ssl;
server_name example.com;
https://www.site.ru
server {
listen 443 ssl;
server_name www.site.ru;
ssl_certificate ... ;
ssl_certificate_key ... ;
return 301 https://site.ru$request_uri;
}
<VirtualHost>
сайта где нужно закрыть доступ ботам.IncludeOptional sites-enabled/*.conf
<Directory /var/www/>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options FollowSymLinks
AllowOverride None
Require expr %{HTTP_USER_AGENT} !~ /SemrushBot-SA|rogerbot|megaindex\.com/
</Directory>
js php python ...