Skip to content

Commit 24e5b23

Browse files
committed
added debian image variant
1 parent 0fc540c commit 24e5b23

File tree

22 files changed

+1267
-7
lines changed

22 files changed

+1267
-7
lines changed

.github/workflows/ci-cd.yml

Lines changed: 216 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
load: true
4040
tags: kooldev/php:${{ matrix.version }}${{ matrix.type }}
4141

42-
- name: Tests
42+
- name: Tests - Basic
4343
run: |
4444
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -v
4545
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} composer -V
@@ -50,6 +50,41 @@ jobs:
5050
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep readline
5151
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m
5252
53+
- name: Tests - Dockerize
54+
run: |
55+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} dockerize --version
56+
# Test dockerize template rendering
57+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} sh -c 'echo "{{ .Env.TEST_VAR }}" > /tmp/test.tmpl && TEST_VAR=hello dockerize -template /tmp/test.tmpl:/tmp/test.out && cat /tmp/test.out | grep hello'
58+
59+
- name: Tests - PHP Extensions
60+
run: |
61+
# Core extensions that must be present in all images
62+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i bcmath
63+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i gd
64+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i intl
65+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i pdo_mysql
66+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i pdo_pgsql
67+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i redis
68+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i zip
69+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i mbstring
70+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i ldap
71+
72+
- name: Tests - Production Checks
73+
if: matrix.type == '-prod'
74+
run: |
75+
# OPcache must be enabled in production
76+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i "Zend OPcache"
77+
# Xdebug must NOT be present in production (even when ENABLE_XDEBUG=true)
78+
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i xdebug && exit 1 || echo "OK: xdebug not in prod"
79+
80+
- name: Tests - Development Checks
81+
if: matrix.type == ''
82+
run: |
83+
# pcov should be available in dev
84+
docker run kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i pcov
85+
# xdebug should be available when enabled
86+
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}${{ matrix.type }} php -m | grep -i xdebug
87+
5388
- name: Build and push
5489
uses: docker/build-push-action@v6
5590
if: github.ref == 'refs/heads/master' && github.repository == 'kool-dev/docker-php'
@@ -81,23 +116,50 @@ jobs:
81116
docker run kooldev/php:${{ matrix.version }}-node${{ matrix.type }} npm -v
82117
docker run kooldev/php:${{ matrix.version }}-node${{ matrix.type }} yarn -v
83118
84-
- name: Tests (nginx)
119+
- name: Tests (nginx) - Basic
85120
run: |
86121
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -v
87122
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} composer -V
88123
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} composer1 -V
89124
docker run -e ASUSER=1000 kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -v
90125
docker run -e ASUSER=1000 kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} composer -V
91126
docker run -e ASUSER=1000 kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} composer1 -V
92-
docker run -e ASUSER=1000 kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} dockerize --version
93-
94127
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep readline
95128
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m
96-
97129
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} nginx -v
98130
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} nginx -T
99131
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} supervisord version
100132
133+
- name: Tests (nginx) - Dockerize
134+
run: |
135+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} dockerize --version
136+
# Test dockerize template rendering
137+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} sh -c 'echo "{{ .Env.TEST_VAR }}" > /tmp/test.tmpl && TEST_VAR=hello dockerize -template /tmp/test.tmpl:/tmp/test.out && cat /tmp/test.out | grep hello'
138+
139+
- name: Tests (nginx) - PHP Extensions
140+
run: |
141+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i bcmath
142+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i gd
143+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i intl
144+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i pdo_mysql
145+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i pdo_pgsql
146+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i redis
147+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i zip
148+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i mbstring
149+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i ldap
150+
151+
- name: Tests (nginx) - Production Checks
152+
if: matrix.type == '-prod'
153+
run: |
154+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i "Zend OPcache"
155+
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i xdebug && exit 1 || echo "OK: xdebug not in prod"
156+
157+
- name: Tests (nginx) - Development Checks
158+
if: matrix.type == ''
159+
run: |
160+
docker run kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i pcov
161+
docker run -e ENABLE_XDEBUG=true kooldev/php:${{ matrix.version }}-nginx${{ matrix.type }} php -m | grep -i xdebug
162+
101163
- name: Build and push (nginx)
102164
uses: docker/build-push-action@v6
103165
if: github.ref == 'refs/heads/master' && github.repository == 'kool-dev/docker-php'
@@ -116,10 +178,157 @@ jobs:
116178
push: true
117179
tags: kooldev/php:${{ matrix.version }}-node${{ matrix.type }}
118180

181+
build-debian:
182+
runs-on: ubuntu-latest
183+
184+
strategy:
185+
matrix:
186+
type: ['', '-prod']
187+
188+
steps:
189+
- name: Checkout code
190+
uses: actions/checkout@v5.0.0
191+
192+
- name: Setup QEMU
193+
uses: docker/setup-qemu-action@v3
194+
195+
- name: Setup Docker Buildx
196+
uses: docker/setup-buildx-action@v3
197+
198+
- name: Login to DockerHub
199+
uses: docker/login-action@v3
200+
if: github.ref == 'refs/heads/master' && github.repository == 'kool-dev/docker-php'
201+
with:
202+
username: ${{ secrets.DOCKER_USERNAME }}
203+
password: ${{ secrets.DOCKER_PASSWORD }}
204+
205+
- name: Build and export to Docker (Debian)
206+
uses: docker/build-push-action@v6
207+
with:
208+
context: 8.4-debian${{ matrix.type }}
209+
load: true
210+
tags: kooldev/php:8.4-debian${{ matrix.type }}
211+
212+
- name: Tests (Debian) - Basic
213+
run: |
214+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -v
215+
docker run kooldev/php:8.4-debian${{ matrix.type }} composer -V
216+
docker run kooldev/php:8.4-debian${{ matrix.type }} composer1 -V
217+
docker run -e ASUSER=1000 kooldev/php:8.4-debian${{ matrix.type }} php -v
218+
docker run -e ASUSER=1000 kooldev/php:8.4-debian${{ matrix.type }} composer -V
219+
docker run -e ASUSER=1000 kooldev/php:8.4-debian${{ matrix.type }} composer1 -V
220+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep readline
221+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian${{ matrix.type }} php -m
222+
223+
- name: Tests (Debian) - Dockerize
224+
run: |
225+
docker run kooldev/php:8.4-debian${{ matrix.type }} dockerize --version
226+
# Test dockerize template rendering with bash
227+
docker run kooldev/php:8.4-debian${{ matrix.type }} bash -c 'echo "{{ .Env.TEST_VAR }}" > /tmp/test.tmpl && TEST_VAR=hello dockerize -template /tmp/test.tmpl:/tmp/test.out && cat /tmp/test.out | grep hello'
228+
229+
- name: Tests (Debian) - Gosu user switching
230+
run: |
231+
docker run kooldev/php:8.4-debian${{ matrix.type }} gosu --version
232+
# Verify gosu works for user switching
233+
docker run -e ASUSER=1000 kooldev/php:8.4-debian${{ matrix.type }} id | grep -E "uid=1000|uid=1337"
234+
235+
- name: Tests (Debian) - PHP Extensions
236+
run: |
237+
# Same extensions as Alpine for consistency
238+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i bcmath
239+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i gd
240+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i intl
241+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i pdo_mysql
242+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i pdo_pgsql
243+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i redis
244+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i zip
245+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i mbstring
246+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i ldap
247+
248+
- name: Tests (Debian) - Production Checks
249+
if: matrix.type == '-prod'
250+
run: |
251+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i "Zend OPcache"
252+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i xdebug && exit 1 || echo "OK: xdebug not in prod"
253+
254+
- name: Tests (Debian) - Development Checks
255+
if: matrix.type == ''
256+
run: |
257+
docker run kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i pcov
258+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian${{ matrix.type }} php -m | grep -i xdebug
259+
260+
- name: Build and push (Debian)
261+
uses: docker/build-push-action@v6
262+
if: github.ref == 'refs/heads/master' && github.repository == 'kool-dev/docker-php'
263+
with:
264+
context: 8.4-debian${{ matrix.type }}
265+
platforms: linux/amd64,linux/arm64
266+
push: true
267+
tags: kooldev/php:8.4-debian${{ matrix.type }}
268+
269+
- name: Build and export to Docker (Debian nginx)
270+
uses: docker/build-push-action@v6
271+
with:
272+
context: 8.4-debian-nginx${{ matrix.type }}
273+
load: true
274+
tags: kooldev/php:8.4-debian-nginx${{ matrix.type }}
275+
276+
- name: Tests (Debian nginx) - Basic
277+
run: |
278+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -v
279+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} composer -V
280+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} composer1 -V
281+
docker run -e ASUSER=1000 kooldev/php:8.4-debian-nginx${{ matrix.type }} php -v
282+
docker run -e ASUSER=1000 kooldev/php:8.4-debian-nginx${{ matrix.type }} composer -V
283+
docker run -e ASUSER=1000 kooldev/php:8.4-debian-nginx${{ matrix.type }} composer1 -V
284+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep readline
285+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m
286+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} nginx -v
287+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} nginx -T
288+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} supervisord version
289+
290+
- name: Tests (Debian nginx) - Dockerize
291+
run: |
292+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} dockerize --version
293+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} bash -c 'echo "{{ .Env.TEST_VAR }}" > /tmp/test.tmpl && TEST_VAR=hello dockerize -template /tmp/test.tmpl:/tmp/test.out && cat /tmp/test.out | grep hello'
294+
295+
- name: Tests (Debian nginx) - PHP Extensions
296+
run: |
297+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i bcmath
298+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i gd
299+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i intl
300+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i pdo_mysql
301+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i pdo_pgsql
302+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i redis
303+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i zip
304+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i mbstring
305+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i ldap
306+
307+
- name: Tests (Debian nginx) - Production Checks
308+
if: matrix.type == '-prod'
309+
run: |
310+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i "Zend OPcache"
311+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i xdebug && exit 1 || echo "OK: xdebug not in prod"
312+
313+
- name: Tests (Debian nginx) - Development Checks
314+
if: matrix.type == ''
315+
run: |
316+
docker run kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i pcov
317+
docker run -e ENABLE_XDEBUG=true kooldev/php:8.4-debian-nginx${{ matrix.type }} php -m | grep -i xdebug
318+
319+
- name: Build and push (Debian nginx)
320+
uses: docker/build-push-action@v6
321+
if: github.ref == 'refs/heads/master' && github.repository == 'kool-dev/docker-php'
322+
with:
323+
context: 8.4-debian-nginx${{ matrix.type }}
324+
platforms: linux/amd64,linux/arm64
325+
push: true
326+
tags: kooldev/php:8.4-debian-nginx${{ matrix.type }}
327+
119328
trigger-build-wordpress:
120329
name: Trigger Wordpress Build
121330
runs-on: ubuntu-latest
122-
needs: build
331+
needs: [build, build-debian]
123332
steps:
124333
- name: Trigger build on kool-dev/docker-wordpress
125334
uses: benc-uk/workflow-dispatch@v1.2
@@ -132,7 +341,7 @@ jobs:
132341
trigger-extended-builds:
133342
name: Trigger Extended Builds
134343
runs-on: ubuntu-latest
135-
needs: build
344+
needs: [build, build-debian]
136345
strategy:
137346
matrix:
138347
image:

8.4-debian-nginx-prod/Dockerfile

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
FROM debian AS cert
2+
3+
WORKDIR /kool/ssl
4+
5+
RUN apt-get update && \
6+
apt-get install -y openssl && \
7+
openssl genrsa -des3 -passout pass:x -out server.pass.key 2048 && \
8+
openssl rsa -passin pass:x -in server.pass.key -out _.localhost.key && \
9+
rm server.pass.key && \
10+
openssl req -new -key _.localhost.key -out server.csr \
11+
-subj "/C=XX/ST=XX/L=XX/O=Kool-Local/OU=Localhost/CN=*.localhost" && \
12+
openssl x509 -req -days 365 -in server.csr -signkey _.localhost.key -out _.localhost.crt && \
13+
openssl x509 -in _.localhost.crt -out _.localhost.pem
14+
15+
FROM kooldev/php:8.4-debian-prod
16+
17+
ENV PHP_FPM_LISTEN=/run/php-fpm.sock \
18+
NGINX_LISTEN=80 \
19+
NGINX_HTTPS=false \
20+
NGINX_LISTEN_HTTPS=443 \
21+
NGINX_HTTPS_CERT=/kool/ssl/_.localhost.pem \
22+
NGINX_HTTPS_CERT_KEY=/kool/ssl/_.localhost.key \
23+
NGINX_ROOT=/app/public \
24+
NGINX_INDEX=index.php \
25+
NGINX_CLIENT_MAX_BODY_SIZE=25M \
26+
NGINX_PHP_FPM=unix:/run/php-fpm.sock \
27+
NGINX_FASTCGI_READ_TIMEOUT=60s \
28+
NGINX_FASTCGI_BUFFERS='8 8k' \
29+
NGINX_FASTCGI_BUFFER_SIZE='16k' \
30+
NGINX_ENTRYPOINT_WORKER_PROCESSES_AUTOTUNE=true
31+
32+
RUN SUPERVISORD_ARCH="$( [ "$(uname -m)" = "aarch64" ] && echo arm64 || echo amd64 )" \
33+
&& curl -L "https://github.com/ochinchina/supervisord/releases/download/v0.6.3/supervisord_static_0.6.3_linux_${SUPERVISORD_ARCH}" -o /usr/local/bin/supervisord \
34+
&& chmod +x /usr/local/bin/supervisord \
35+
&& apt-get update && apt-get install -y --no-install-recommends nginx wget \
36+
&& chown -R kool:kool /var/lib/nginx \
37+
&& chmod 770 /var/lib/nginx \
38+
&& ln -sf /dev/stdout /var/log/nginx/access.log \
39+
&& ln -sf /dev/stderr /var/log/nginx/error.log \
40+
# add h5bp/server-configs-nginx
41+
&& mkdir -p /etc/nginx/conf.d \
42+
&& mkdir /etc/nginx/h5bp \
43+
&& cd /etc/nginx/h5bp \
44+
&& wget https://github.com/h5bp/server-configs-nginx/archive/refs/tags/5.0.1.tar.gz -O h5bp.tgz \
45+
&& tar xzvf h5bp.tgz \
46+
&& rm -f h5bp.tgz \
47+
&& mv server-configs-nginx-*/h5bp/* . \
48+
&& mv server-configs-nginx-*/nginx.conf /etc/nginx/nginx.conf \
49+
&& sed -i "s|^user .*|user\ kool kool;|g" /etc/nginx/nginx.conf \
50+
&& mv server-configs-nginx-*/mime.types /etc/nginx/mime.types \
51+
&& rm -rf server-configs-nginx-* \
52+
&& curl -L https://raw.githubusercontent.com/nginxinc/docker-nginx/master/entrypoint/30-tune-worker-processes.sh -o /kool/30-tune-worker-processes.sh \
53+
&& chmod +x /kool/30-tune-worker-processes.sh \
54+
&& apt-get purge -y --auto-remove wget \
55+
&& rm -rf /var/lib/apt/lists/*
56+
57+
COPY supervisor.conf /kool/supervisor.conf
58+
COPY default.tmpl /kool/default.tmpl
59+
COPY entrypoint /kool/entrypoint
60+
COPY --from=cert /kool/ssl /kool/ssl
61+
RUN chmod +x /kool/entrypoint
62+
63+
EXPOSE 80
64+
65+
CMD [ "supervisord", "-c", "/kool/supervisor.conf" ]

8.4-debian-nginx-prod/default.tmpl

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
server {
2+
listen {{ .Env.NGINX_LISTEN }} default_server;
3+
server_name _;
4+
{{ if isTrue .Env.NGINX_HTTPS }}
5+
listen {{ .Env.NGINX_LISTEN_HTTPS }} ssl http2;
6+
ssl_certificate {{ .Env.NGINX_HTTPS_CERT }};
7+
ssl_certificate_key {{ .Env.NGINX_HTTPS_CERT_KEY }};
8+
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
9+
ssl_ciphers HIGH:!aNULL:!MD5;
10+
{{ end }}
11+
root {{ .Env.NGINX_ROOT }};
12+
index {{ .Env.NGINX_INDEX }};
13+
charset utf-8;
14+
15+
location = /favicon.ico { log_not_found off; access_log off; }
16+
location = /robots.txt { log_not_found off; access_log off; }
17+
18+
client_max_body_size {{ .Env.NGINX_CLIENT_MAX_BODY_SIZE }};
19+
20+
error_page 404 /index.php;
21+
22+
location / {
23+
try_files $uri /{{ .Env.NGINX_INDEX }}?$query_string;
24+
}
25+
26+
location ~ \.php$ {
27+
fastcgi_buffers {{ .Env.NGINX_FASTCGI_BUFFERS }};
28+
fastcgi_buffer_size {{ .Env.NGINX_FASTCGI_BUFFER_SIZE }};
29+
fastcgi_pass {{ .Env.NGINX_PHP_FPM }};
30+
fastcgi_read_timeout {{ .Env.NGINX_FASTCGI_READ_TIMEOUT }};
31+
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
32+
include fastcgi_params;
33+
}
34+
35+
location ~ /\.ht {
36+
deny all;
37+
}
38+
39+
# good practices
40+
add_header X-Frame-Options "SAMEORIGIN";
41+
42+
# basic H5BP suggestions
43+
include h5bp/security/referrer-policy.conf;
44+
include h5bp/security/x-content-type-options.conf;
45+
include h5bp/cross-origin/requests.conf;
46+
47+
# performance enhancements (mostly for caching static data)
48+
include h5bp/web_performance/cache-file-descriptors.conf;
49+
include h5bp/web_performance/compression.conf;
50+
}

0 commit comments

Comments
 (0)