Mercurial
diff .htaccess @ 0:78edf6b517a0 draft
24.10
author | Coffee CMS <info@coffee-cms.ru> |
---|---|
date | Fri, 11 Oct 2024 22:40:23 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.htaccess Fri Oct 11 22:40:23 2024 +0000 @@ -0,0 +1,108 @@ +# Блокировать атакующих +#Deny from 192.168.0.1 +#Deny from 192.168.0.2 + +# Редиректы страниц +#Redirect 301 /old-url /new-url + +Options -Indexes + +DirectoryIndex index.html .cms/index.php + +<IfModule mod_rewrite.c> + + RewriteEngine On + RewriteBase "/" + + # domain.ru, www.domain.ru => domain.com + #RewriteCond %{HTTP_HOST} ^(www\.)?domain\.ru$ [NC] + #RewriteRule ^(.*)$ https://domain.com%{REQUEST_URI} [R=301,L] + + # http => https + #RewriteCond %{HTTPS} off + #RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] + + # . => www + #RewriteCond %{HTTP_HOST} !^www\. [NC] + #RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] + + # www => . + #RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] + #RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301] + + # .hidden files + RewriteCond %{THE_REQUEST} "^(GET|POST|HEAD) (^|/)\.(.*) HTTP/[0-9.]+$" + RewriteRule ^ - [F] + + # redirect /test/ to /test if file /test is exist + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_FILENAME} -f + RewriteCond %{REQUEST_URI} ^(.+)/$ + RewriteRule ^(.+)/$ $1 [R=301,L] + + #AcceptPathInfo Off + RewriteCond %{REQUEST_FILENAME} !-f + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_URI} !=/favicon.ico + RewriteRule ^(.*)$ .cms/index.php + +</IfModule> + +<IfModule mod_headers.c> + + # 180 days + #Header set Cache-Control "max-age=15552000" + # Этот вариант закеширует вход в админку при установке CMS. + # Нужно быть готовым нажать F5 или раскомментировать после установки. + # Всему подряд добавлять кеширование только чтобы успокоить гугл-консоль - плохой вариант + # В админке, в Шаблоны, можно задать свои заголовки. Если там прописать + # cache-control: max-age=15552000 + # то отдаваемые страницы получат этот заголовок, но админка и api-запросы + # будут отдаваться без этого заголовка. + + # Нижеперечисленное подойдет если у вас нет nginx перед apache. + # Если же захотите кешировать все подряд и делать исключения через <If>, + # то убедитесь что админка и другие нужные api-запросы не получают + # заголовок Cache-Control + + # 180 days + #<FilesMatch "\.(jpg|jpeg|png|gif|webp|svg|qoi)$"> + # Header set Cache-Control "max-age=15552000" + #</FilesMatch> + + # 180 days + #<FilesMatch "\.(js|css)$"> + # Header set Cache-Control "max-age=15552000" + #</FilesMatch> + +</IfModule> + +#<IfModule mod_expires.c> +# ExpiresActive On +# ExpiresDefault "access plus 1 week" +#</IfModule> +# +#<IfModule mod_deflate.c> +# SetOutputFilter DEFLATE +#</IfModule> + +# Для отладки на хостингах +# Если нет ошибок PHP в error.log +# php_flag display_startup_errors off +# php_flag display_errors off +# php_flag html_errors off +# php_flag log_errors on +# php_flag ignore_repeated_errors off +# php_flag ignore_repeated_source off +# php_flag report_memleaks on +# php_flag track_errors on +# php_value docref_root 0 +# php_value docref_ext 0 +# php_value error_log /home/<u>/<user_name>/<user_name>.beget.tech/PHP_errors.log +# php_value error_reporting 2047 +# php_value log_errors_max_len 0 +# <Files PHP_errors.log> +# Order allow,deny +# Deny from all +# Satisfy All +# </Files>