Fix contact form POST routing and bake env into build
- nginx: route POST /contact/ to contact.php, GET to router.php - Dockerfile: COPY .env into image - entrypoint.sh: source .env on container start - .dockerignore: allow .env to be included in build context
This commit is contained in:
+1
-2
@@ -7,8 +7,7 @@ __pycache__
|
|||||||
*.pyc
|
*.pyc
|
||||||
*.md
|
*.md
|
||||||
*.txt
|
*.txt
|
||||||
.env
|
.env.example
|
||||||
.env.*
|
|
||||||
!robots.txt
|
!robots.txt
|
||||||
*.xml
|
*.xml
|
||||||
!sitemap.xml
|
!sitemap.xml
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ COPY robots.txt /var/www/html/robots.txt
|
|||||||
COPY sitemap.xml /var/www/html/sitemap.xml
|
COPY sitemap.xml /var/www/html/sitemap.xml
|
||||||
COPY 404.html /var/www/html/404.html
|
COPY 404.html /var/www/html/404.html
|
||||||
COPY 500.html /var/www/html/500.html
|
COPY 500.html /var/www/html/500.html
|
||||||
|
COPY .env /var/www/html/.env
|
||||||
|
|
||||||
RUN chown -R www-data:www-data /var/www/html
|
RUN chown -R www-data:www-data /var/www/html
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -e
|
set -e
|
||||||
|
if [ -f /var/www/html/.env ]; then
|
||||||
|
set -a; . /var/www/html/.env; set +a
|
||||||
|
fi
|
||||||
if [ -z "$ALTCHA_HMAC_KEY" ]; then
|
if [ -z "$ALTCHA_HMAC_KEY" ]; then
|
||||||
export ALTCHA_HMAC_KEY="$(openssl rand -hex 32)"
|
export ALTCHA_HMAC_KEY="$(openssl rand -hex 32)"
|
||||||
echo "Generated ALTCHA_HMAC_KEY" >&2
|
echo "Generated ALTCHA_HMAC_KEY" >&2
|
||||||
|
|||||||
+8
-2
@@ -81,8 +81,14 @@ http {
|
|||||||
limit_req zone=contact_limit burst=3 nodelay;
|
limit_req zone=contact_limit burst=3 nodelay;
|
||||||
limit_req_status 429;
|
limit_req_status 429;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_param SCRIPT_FILENAME /var/www/html/src/api/router.php;
|
set $contact_script /var/www/html/src/api/router.php;
|
||||||
fastcgi_param QUERY_STRING type=page&slug=contact;
|
set $contact_query "type=page&slug=contact";
|
||||||
|
if ($request_method = POST) {
|
||||||
|
set $contact_script /var/www/html/src/api/contact.php;
|
||||||
|
set $contact_query "";
|
||||||
|
}
|
||||||
|
fastcgi_param SCRIPT_FILENAME $contact_script;
|
||||||
|
fastcgi_param QUERY_STRING $contact_query;
|
||||||
fastcgi_pass 127.0.0.1:9000;
|
fastcgi_pass 127.0.0.1:9000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user