new file: akashop/redirect.yml

This commit is contained in:
Sangmin Kim 2024-04-02 10:57:45 +09:00
parent 6bb64c5601
commit 5f934c40a0
4 changed files with 52 additions and 34 deletions

View File

@ -1,2 +1,45 @@
# akashop
origin-akashop.akamai-lab.com
## How to use HTTPS ##
- traefik/02-traefik.yml
```
- --certificatesresolvers.le.acme.email=learn@akamai.com
- --certificatesresolvers.le.acme.storage=acme.json
- --certificatesresolvers.le.acme.tlschallenge=true
- --certificatesresolvers.le.acme.caServer=https://acme-staging-v02.api.letsencrypt.org/directory
```
- akashop/ingress.yml
```
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.tls.certresolver: le
```
## How to redirect HTTP to HTTPS ##
- akashop/redirect.yml
- akashop/ingress.yml
```
traefik.ingress.kubernetes.io/router.middlewares: "http-to-https-redirecte@kubernetescrd"
```
## How to maintain Session Stickyness ##
- akashop/ingress.yml
```
traefik.ingress.kubernetes.io/router.sticky.cookie: "sticky"
```
- origin code (functions.php)
```php
// Define cookie name and value
$cookie_name = "sticky";
$cookie_value = time();
// Set expiration time (optional, defaults to session end)
$expire = time() + 60 * 60 * 24; // Expires in 24 hours
if(!isset($_COOKIE[$cookie_name])) {
// Set cookie with secure flag (recommended)
setcookie($cookie_name, $cookie_value, $expire, "/", "", true);
}
```

View File

@ -30,6 +30,7 @@ metadata:
namespace: akashop
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
traefik.ingress.kubernetes.io/router.middlewares: "http-to-https-redirecte@kubernetescrd"
spec:
rules:
- host: whoami.172.233.168.9.nip.io
@ -42,25 +43,3 @@ spec:
name: wp
port:
number: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: wp-origin
namespace: akashop
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
spec:
rules:
- host: origin-akashop.akamai-lab.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: wp
port:
number: 80

View File

@ -1,12 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: nginx
namespace: akashop
spec:
type: ExternalName
externalName: nginx.nginx.svc.cluster.local
ports:
- name: http
port: 80
protocol: TCP

8
akashop/redirect.yml Normal file
View File

@ -0,0 +1,8 @@
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: http-to-https-redirect
spec:
redirectScheme:
scheme: https
permanent: true # Set to true for permanent (301) redirect