Avatar billede boholdt Mester
05. maj 2023 - 13:06 Der er 3 kommentarer

Deaktivering af HTTP komprimering via .htaccess

Hej

Jeg har behov for midlertidigt at deaktivere HTTPP komprimering på mit webhotel. Mit webhotel er hostet hos Simply.com (tidligere UnoEuro).

Jeg har forsøgt på flere måder igennem en .htaccess-fil, men intet fungerer ordentligt.

1. Første udkast af .htaccess-filen:
<ifModule mod_deflate.c>
no-gzip dont-vary
</IfModule>

## Automatic 301 redirect to https

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>

## Additional security headers

<ifModule mod_headers.c>

# X Frame Options
Header always set X-Frame-Options "SAMEORIGIN"

# X XSS-Protection (deprecated)
Header set X-XSS-Protection "0"

#  X Content-Type-Options
Header set X-Content-Type-Options "nosniff"

# X Permitted Cross Domain Policies
Header set X-Permitted-Cross-Domain-Policies "none"

# X-Powered-By and Server
Header unset X-Powered-By
Header unset Server

# Enable Strict Transport Security
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS

# Referrer Policy
Header set Referrer-Policy "strict-origin-when-cross-origin"

# Expect-CT (deprecated)
# Header set Expect-CT "max-age=86400, enforce" env=HTTPS

## Advanced policies - basic implementation

# Feature Policy (rudimentary policies supported by most browsers)
Header set Feature-Policy "microphone 'none'; camera 'none'"

# Permissions Policy (rudimentary policies supported by chrome and FF)
Header set Permissions-Policy "autoplay=(self), encrypted-media=(self), fullscreen=(self), geolocation=(self), midi=(self), payment=(self)"

# Content Security Policy (CSP - rudimentary policies enforcing https)
Header set Content-Security-Policy "default-src * data:; script-src https: data: 'unsafe-inline' 'unsafe-eval'; style-src https: 'unsafe-inline'"

</IfModule>
---
2. Andet udkast af .htaccess-filen:
php_flag zlib.output_compression off
## Automatic 301 redirect to https

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>

## Additional security headers

<ifModule mod_headers.c>

# X Frame Options
Header always set X-Frame-Options "SAMEORIGIN"

# X XSS-Protection (deprecated)
Header set X-XSS-Protection "0"

#  X Content-Type-Options
Header set X-Content-Type-Options "nosniff"

# X Permitted Cross Domain Policies
Header set X-Permitted-Cross-Domain-Policies "none"

# X-Powered-By and Server
Header unset X-Powered-By
Header unset Server

# Enable Strict Transport Security
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS

# Referrer Policy
Header set Referrer-Policy "strict-origin-when-cross-origin"

# Expect-CT (deprecated)
# Header set Expect-CT "max-age=86400, enforce" env=HTTPS

## Advanced policies - basic implementation

# Feature Policy (rudimentary policies supported by most browsers)
Header set Feature-Policy "microphone 'none'; camera 'none'"

# Permissions Policy (rudimentary policies supported by chrome and FF)
Header set Permissions-Policy "autoplay=(self), encrypted-media=(self), fullscreen=(self), geolocation=(self), midi=(self), payment=(self)"

# Content Security Policy (CSP - rudimentary policies enforcing https)
Header set Content-Security-Policy "default-src * data:; script-src https: data: 'unsafe-inline' 'unsafe-eval'; style-src https: 'unsafe-inline'"

</IfModule>
---
3. Tredje udkast af .htaccess-filen:
# Disable HTTP compression START
SetEnv no-gzip 1
# Disable HTTP compression END
## Automatic 301 redirect to https

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>

## Additional security headers

<ifModule mod_headers.c>

# X Frame Options
Header always set X-Frame-Options "SAMEORIGIN"

# X XSS-Protection (deprecated)
Header set X-XSS-Protection "0"

#  X Content-Type-Options
Header set X-Content-Type-Options "nosniff"

# X Permitted Cross Domain Policies
Header set X-Permitted-Cross-Domain-Policies "none"

# X-Powered-By and Server
Header unset X-Powered-By
Header unset Server

# Enable Strict Transport Security
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS

# Referrer Policy
Header set Referrer-Policy "strict-origin-when-cross-origin"

# Expect-CT (deprecated)
# Header set Expect-CT "max-age=86400, enforce" env=HTTPS

## Advanced policies - basic implementation

# Feature Policy (rudimentary policies supported by most browsers)
Header set Feature-Policy "microphone 'none'; camera 'none'"

# Permissions Policy (rudimentary policies supported by chrome and FF)
Header set Permissions-Policy "autoplay=(self), encrypted-media=(self), fullscreen=(self), geolocation=(self), midi=(self), payment=(self)"

# Content Security Policy (CSP - rudimentary policies enforcing https)
Header set Content-Security-Policy "default-src * data:; script-src https: data: 'unsafe-inline' 'unsafe-eval'; style-src https: 'unsafe-inline'"

</IfModule>
---

Når jeg tester via hjemmesiden https://http.dev/compression/test, står der, at hjemmesiden stadig benytter GZIP-komprimering, uanset hvordan, at jeg forsøger at slå det fra.

Er der nogle som ved, om det er muligt at deaktivere http komprimering på en anden måde via .htaccess, når de 3 ovenstående forsøg ikke fungerer?

På forhånd tak for svaret, og rigtig god dag.

Mvh Anders
Avatar billede erikjacobsen Ekspert
05. maj 2023 - 18:01 #1
Det er et spørgsmål om det overhovedet er noget du kan bestemme.

Klienten (browseren) siger hvad det kan forstå, herunder om den kan forstå komprimering og hvilke (bl.a. gzip).

Hvis serveren ser at klienten siger den kan, så vil serveren (oftest/altid?) sende det komprimeret.  Hvis klienten ikke siger noget om komprimering, så vil serveren sende det ikke-komprimeret.

Sådan i teorien i hvert fald ;)
Avatar billede bvirk Guru
06. maj 2023 - 10:04 #2
Netop <b>en</b> server har fået sit kælenavn fordi den er lutter patches og 'patchet' (modulet)  mod_deflate er ansvarlig for kompression. Hvordan og om muligt og med hvilke argumenter den styres ved jeg ikke. Men god forklaring på den overordnede client-server dialog i #1
Avatar billede bvirk Guru
06. maj 2023 - 21:54 #3
Well - flerer vil med tiden spotte tonelejet:

'Ja, du kan angive en række indstillinger i Apache's .htaccess-fil for at styre komprimering af filer, der sendes fra din webserver til klienter.'

'For at deaktivere komprimering af bestemte filtyper, kan du føje følgende linjer til din .htaccess-fil:'

<IfModule mod_deflate.c>
  # Deaktivér komprimering for disse filtyper
  SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
</IfModule>

'I dette eksempel deaktiverer linjen "SetEnvIfNoCase" komprimering for GIF, JPG og PNG-billedfiler. Du kan tilføje andre filtyper ved at tilføje dem til listen efter "png|".'
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester