Bonjour,
J'ai un serveur dont les DNS sont :
Sur le serveur 11.22.33.44 (Ubuntu 14.04), j'ai nginx :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @ 10800 IN A 11.22.33.44 cloud 10800 IN A 11.22.33.44 blog 10800 IN A 11.22.33.44 www 10800 IN CNAME exemple.com.
Sur le serveur, j'ai installé une machine virtuelle 192.168.0.11 avec nginx configurer comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 upstream php-handler { server 127.0.0.1:9000; #server unix:/var/run/php5-fpm.sock; } # redirection ssl server { listen 80; server_name blog.exemple.com; return 301 https://$server_name$request_uri; } server { listen 80; server_name exemple.com www.exemple.com; return 301 https://$server_name$request_uri; } #---------------------------# # Exemple.com #---------------------------# server { listen 443 ssl; server_name exemple.com www.exemple.com; index index.html index.htm; charset utf-8; error_page 401 403 404 /404.html; ## SSL settings ssl_certificate /etc/letsencrypt/live/exemple.com/fullchain.pem; ssl_trusted_certificate /etc/letsencrypt/live/exemple.com/chain.pem; ssl_certificate_key /etc/letsencrypt/live/exemple.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK"; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_ecdh_curve secp384r1; location / { proxy_pass http://192.168.0.11/; } } # blog server { listen 443 ssl; server_name blog.exemple.com; index index.html index.htm; charset utf-8; error_page 401 403 404 /404.html; ## SSL settings ssl_certificate /etc/letsencrypt/live/exemple.com/fullchain.pem; ssl_trusted_certificate /etc/letsencrypt/live/exemple.com/chain.pem; ssl_certificate_key /etc/letsencrypt/live/exemple.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK"; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_ecdh_curve secp384r1; location / { proxy_pass http://192.168.0.11; } }
Le soucis que je rencontre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 server{ listen 80; server_name exemple.com www.exemple.com; root /usr/share/nginx/html; index index.html index.htm; location / { try_files $uri $uri/ =404; } } # # blog # server{ listen 80; server_name blog.exemple.com; root /usr/share/nginx/html/blog; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
- exemple.com et www.exemple.com sont bien rediriger en https
- blog.exemple.com apparaît bien rediriger en https dans la barre d'adresse, mais c'est la page d'index de exemple.com qui s'affiche!!
Une âme charitable pourrait-elle m'expliquer ?
Merci,
Christophe
Edit : Une solution (peut-être pas la seule ni la meilleure)
Tout d'abord création du fichier /etc/nginx/conf.d/proxy.conf
Ensuite j'ai déplacé le blog de /usr/share/nginx/html vers /var/www/blog avec modification du proxy_pass.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; client_header_buffer_size 64k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 16k; proxy_buffers 32 16k; proxy_busy_buffers_size 64k;
Test : un beau 403...
Modification des droits
Ça marche!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 chown www-data:www-data /var/www chmod 744 /var/www
À force d'échouer, on finit par réussir.
Moralité, plus on échoue, plus on a de chance de réussir
Partager