35

comment installer un serveur web performant sous ubuntu 12.04

Présentation du serveur web performant: LNMP

LNMP pour Linux Nginx MySql Php
Le choix du moteur du serveur web est nginx avec les modules php-fpm et php-xcache, et comme serveur de base de donnée le célèbre MySql-server.

Pur plus d’info sur nginx: http://wiki.nginx.org/NginxFr

nginx server logo

Ici le choix de l’os: Ubuntu serveur 12.04

php-fpm pour Php FastCGI sera le module qui traitera toutes les instructions PHP.
Pour ne pas retraiter des instructions PHP inutilement, le module php-xcache s’occupera donc du cache PHP.

Prérequis

Avoir les droits root
passage en root

sudo -s

Mise à jour des paquets

apt-get update

Installation de nginx

apt-get install nginx

on lance nginx

service nginx start

test dans un navigateur de nginx
nginx server web

Installation de MySql

apt-get install mysql-server mysql-client 

Lors de l’installation, un mot de passe root sera demander.
mysql-server

Puis Sécuriser MySql

Installation de Php

apt-get install php5-fpm php5-mysql php5-xcache php5-cli

Astuce: pour connaitre tous les module Php

apt-cache search php5

Configuration de nginx

Les fichiers de configuration des sites disponible se trouve, tout comme pour apache2, dans /etc/nginx/sites-available
Et un lien symbolique de chaque configuration des sites disponibles dans /etc/nginx/site-enabled

Par défaut voici la conf de nginx

nano /etc/nginx/sites-enabled/default
server {
        #listen   80; ## listen for ipv4; this line is default and implied
        #listen   [::]:80 default ipv6only=on; ## listen for ipv6

        root /usr/share/nginx/www;
        index index.html index.htm;

        # Make site accessible from http://localhost/
        server_name localhost;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to index.html
                try_files $uri $uri/ /index.html;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
        }

Création d’un fichier de configuration pour un site

touch /etc/nginx/sites-available/site-web01

Création du lien symbolique

ln -s /etc/nginx/sites-available/site-web01 /etc/nginx/sites-enabled/

Création du répertoire pour le site web, exemple:

mkdir /home/fred/web/
mkdir /home/fred/web/site-web01

Droits pour www-data sur le répertoire

chown -R www-data:www-data /home/fred/web/

Création d’une page de test

nano /home/fred/web/site-web01/index.html

le code html
[code lang= »html »]
<html><body>Page de TEST</body></html>

Suppression du fichier de configuration default

rm /etc/nginx/sites-enabled/default

Edition du fichier de configuration

nano /etc/nginx/sites-enabled/site-web01

Voici un exemple de configuration simple

server {
        listen   80;         
        root /home/fred/web/site-web01;
        index index.html index.htm index.php;

        # Make site accessible from http://localhost/
        server_name www.domaine.tld;

        location / {
                try_files $uri $uri/ /index.html;
                        }
}

explication:
listen 80: le serveur web écoute sur le port 80
root /home/fred/web/site-web01: chemin du répertoire du site web
index index.html index.htm index.php: prise en charge des formats .html, .htm et .php
server_name www.domaine.tld: pour que le site soit accessible depuis l’extérieur il faut lui renseigner un vrai nom de domaine.
location / {try_files $uri $uri/ /index.html;}: lors de la requête dans le navigateur s’il n’est pas préciser la page, dans ce cas index.html sera appelé.

Test dans le navigateur:
nginx server

Prise en charge du PHP

Edition du fichier de configuration du site

nano /etc/nginx/sites-enabled/site-web01

Ajout de la prise en charge PHP dans le fichier de configuration site-web01 :

server {
        listen   80;
        root /home/fred/web/site-web01;
        index index.html index.htm index.php;

        # Make site accessible from http://localhost/
        server_name localhost;

        location / {
                try_files $uri $uri/ /index.html;
                        }
        
        #prise en charge PHP
        location ~ .php$ {

        fastcgi_pass 127.0.0.1:9000;
        include /etc/nginx/fastcgi_params;
        fastcgi_index index.php;
        }
}

Relance de nginx

service nginx reload

Edition du fichier index.php

nano /home/fred/web/site-web01/index.php

[code lang= »php »]
<?
phpinfo();
?>

Test dans le navigateur
nginx php

mais le module php-xcache n’est pas encore pris en compte

Prise en charge du module php-xcache

pour ce faire il suffit de relancer php5-fpm

service php5-fpm restart

Vérification dans le navigateur avec index.php
nginx xcache

Conclusion

Avec un minimum d’effort, nous voici avec un serveur web performant léger et robuste :-)
A savoir, les principaux site pr0n tournent sous nginx ;-)

Bonus: un fichier de configuration Nginx pour WordPress

A savoir:

  • ici nginx écoute sur le port 8080
  • Mise en cache des fichiers statiques: js|css|png|jpg|jpeg|gif|ico
  • redirection en HTTPS pour wp-admin
  • blocage par .htaccess à l’accès de wp-admin
server {
listen 8080;
server_name memo-linux.com;
root /home/fred/www/blog/;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error;
index index.php index.phtml index.html
 # Security
        include global/security.conf;

        location / {
                # This is cool because no php is touched for static content.
                # include the "?$args" part so non-default permalinks doesn't break
#when using query string
                try_files $uri $uri/ /index.php?$args;
        }

    # PHP-FPM
    include global/php-fpm.conf;

location ~ /\.ht {
    deny all;
}

    # STATICS FILES
        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}

server
{
listen 443 ssl;
  server_name .memo-linux.com;
  ssl_certificate /etc/nginx/ssl/server.crt;
  ssl_certificate_key /etc/nginx/ssl/server.key;
  root /var/www;
  index index.php;
  # Process only the requests to wp-login and wp-admin
  location ~ /(wp-) {

                auth_basic            "Acces DENIED!";
                auth_basic_user_file  /home/fred/www/rep01/.htpasswd;

location ~ \.php$ {
try_files $uri =404;
      include fastcgi_params;
      fastcgi_index index.php;
      fastcgi_pass   127.0.0.1:9000;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      fastcgi_param  QUERY_STRING     $query_string;
      fastcgi_param  REQUEST_METHOD   $request_method;
      fastcgi_param  CONTENT_TYPE     $content_type;
      fastcgi_param  CONTENT_LENGTH   $content_length;
      fastcgi_intercept_errors        on;
      fastcgi_ignore_client_abort     off;
      fastcgi_connect_timeout 60;
      fastcgi_send_timeout 180;
      fastcgi_read_timeout 180;
      fastcgi_buffers 4 256k;
      fastcgi_buffer_size 128k;
      fastcgi_busy_buffers_size 256k;
      fastcgi_temp_file_write_size 256k;
      }
  }
  # Redirect everything else to port 80
location / {
    return 301 http://$host$request_uri;
  }
}

Création du fichier /etc/nginx/global/php-fpm.conf

location ~ \.php$ {
    # The following line prevents malicious php code to be executed through some uploaded file (without php extension, like image)
    # This fix shoudn't work though, if nginx and php are not on the same server, other options exist (like unauthorizing php execution within upload folder)
    # More on this serious security concern in the "Pass Non-PHP Requests to PHP" section, there http://wiki.nginx.org/Pitfalls
##ATTENTION ici c'est pour la redirection HTTPS!######
location ~ /wp-(admin|login) {
      return 301 https://$host$request_uri;
    }
################################
   try_files $uri =404;
    # PHP
    # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_param  QUERY_STRING     $query_string;
    fastcgi_param  REQUEST_METHOD   $request_method;
    fastcgi_param  CONTENT_TYPE     $content_type;
    fastcgi_param  CONTENT_LENGTH   $content_length;
    fastcgi_intercept_errors        on;
    fastcgi_ignore_client_abort     off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffers 4 256k;
    fastcgi_buffer_size 128k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
}

Partager l'article :





fred

"Dire que l'on s'en fiche du droit à la vie privée sous prétexte qu'on a rien à cacher, c'est comme déclarer que l'on se fiche du droit à la liberté d'expression sous prétexte qu'on a rien à dire." Edward Snowden

35 commentaires

  1. Bonsoir,

    j’ai bien suivi à la lettre votre tuto très bon d’ailleurs, et j’aurai 2 questions, la premiere est que malgré ma bonne lecture, le lien php me renvoi File not found. pourtant le nano index est renseigné

    et le virtual host également puisqu’il marche sur le lien malittleboutique.com

    server {
    listen 80;
    root /home/fred/web/site-web01;
    index index.html index.htm index.php;
    # Make site accessible from http://localhost/
    server_name http://www.malittleboutique.com;
    location / {
    try_files $uri $uri/ /index.html;
    }
    #prise en charge PHP
    location ~ .php$ {
    fastcgi_pass 127.0.0.1:9000;
    include /etc/nginx/fastcgi_params;
    fastcgi_index index.php;
    }
    }

    je me suis servi des memes liens pour comprendre, mais là je suis un peu perdu merci pour l’aide si possible, et il y a t’il une suite à ce tuto pour installer wordpress juste après ?

    cordialement et merci

  2. Bonjour Paolo,

    je ne comprends pas le bien le problème:
    le lien php me renvoi File not foundet puisqu’il marche sur le lien malittleboutique.com
    donc la prise en compte du php fonctionne?

    et il y a t’il une suite à ce tuto pour installer wordpress juste après ?
    je n’avais pas prévu mais si ça peut aider pourquoi pas?

  3. Bonjour,
    Merci pour ce guide qui me rend un énorme service pour configurer mon vps sous ubuntu server 12.04 x64!

    Je viens de bloquer sur un point et il y a une erreur que je voudrais te signaler :
    – remplacer nano /etc/nginx/site-enables/default par nano /etc/nginx/site-enabled/default

    Maintenant j’ai un nouveau problème :)

    Avant toute chose :
    – j’ai remplacer « site-web01 » par « wp-jrederseditions »
    – nano /etc/nginx/sites-enabled/wp-jrederseditions m’affiche cela :

    server {
    listen 80;
    root /home/jreders/web/wp-jrederseditions;
    index index.html index.htm index.php;
    # Make site accessible from http://localhost/
    server_name http://www.jrederseditions.com;
    location / {
    try_files $uri $uri/ /index.html;
    }
    #prise en charge PHP
    location ~ .php$ {
    fastcgi_pass 127.0.0.1:9000;
    include /etc/nginx/fastcgi_params;
    fastcgi_index index.php;
    }
    }

    – Chez OVH j’ai mis a jour le chant de pointage type A, ainsi, le nom de domaine .jrederseditions.com pointe sur l’IP de mon serveur.

    Cependant, je ne parvient pas à afficher la page de test « Page de TEST » dans mon navigateur ni avec http://www.jrederseditions.com/index.html ni avec IPdemonserveur/index.html.
    C’est le message « Welcome to nginx! » qui s’affiche…
    J’ai réinstaller mon serveur 3 fois pour reprendre ce tuto de 0 et j’ai obtenu le meme résultat 3 fois, impossible d’afficher le message de la page TEST

    J’ai tout de même continuer le tuto (d’ou #prise en charge PHP)
    après « service nginx reload », voici l’erreur que j’ai :

    Reloading nginx configuration: nginx: [emerg] unknown directive  » listen  » in /etc/nginx/sites-enabled/wp-jrederseditions:2

    De l’aide me serait d’un grand secours ;)

  4. Bonjour jerome,
    merci d’avoir relevé la petite coquille :-)

    En lisant ton message, je m’aperçois que tu veux installer un wordpress?(« wp-jrederseditions »)
    Si c’est le cas, je vais fournir mon fichier de conf dans l’article.

    Ta page de test que tu veux afficher est-elle bien index.html sans avoir mis wordpress?

    Pour le message d’erreur nginx, à la ligne 2 de ton fichier de conf. Je pense entre listen et 80 il doit avoir un espace de trop.

  5. Bonjour Jérome ,

    Merci pour le super tuto :-)
    Mais la fonction dans le test de php est incorrect car c’est phpinfo()
    et non pas la fonction infophp() ;-)

    Didier

  6. Bonjour Didier,
    merci à toi d’avoir relevé l’erreur! :-)
    c’est corrigé.

    fred

  7. Merci pour ce tuto mais problème pas de PHP qui fonctionne erreur 403 alors que si j’utilise un fichier html aucun souci
    [code]
    server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /var/www/sites/lbpm;
    index .php index index.html index.htm;

    # Make site accessible from http://localhost/
    server_name http://www.lesbonsplansmobiles.com;

    location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    try_files $uri $uri/ =404;
    # Uncomment to enable naxsi on this location
    # include /etc/nginx/naxsi.rules
    }

    # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
    #location /RequestDenied {
    # proxy_pass http://127.0.0.1:8080;
    #}

    #error_page 404 /404.html;

    # redirect server error pages to the static page /50x.html
    #
    #error_page 500 502 503 504 /50x.html;
    #location = /50x.html {
    # root /usr/share/nginx/html;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
    # fastcgi_split_path_info ^(.+\.php)(/.+)$;
    # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
    #
    # # With php5-cgi alone:
    fastcgi_pass 127.0.0.1:9000;
    # # With php5-fpm:
    # fastcgi_pass unix:/var/run/php5-fpm.sock;

    fastcgi_index index.php;
    include /etc/nginx/fastcgi_params;
    # include fastcgi_params;
    #

    # deny access to .htaccess files, if Apache’s document root
    # concurs with nginx’s one
    #
    #location ~ /\.ht {
    # deny all;
    #}
    }
    [/code]

  8. Salut Mickael, tu as une erreur dans ton fichier de conf:
    [code language= » »]
    index .php index index.html index.htm;
    [/code]
    change pour:
    [code language= » »]
    index index.html index.htm index.php;
    [/code]

  9. Merci c’est parfait ça fonctionne correctement ;) sinon tu n’as rien vu d’étrange dans ma conf ? après je vais continuer de la modifier car c’est pour un wordpress

  10. Si c’est pour un wordpress, tu peux t’inspirer de mon fichier de conf :-)

  11. quand je remplace par ta config j’ai un message d’erreur
    [code]
    nginx: [emerg] open() "/etc/nginx/global/php-fpm.conf" failed (2: No such file or directory) in /etc/nginx/sites-enabled/default:17
    nginx: configuration file /etc/nginx/nginx.conf test failed\nroot@ns3096498:/home/micklie# nano /etc/nginx/
    [/code]

  12. Après faut adapter ;-)
    là il dit qu’il ne trouve pas /etc/nginx/global/php-fpm.conf

  13. J’ai enfin trouvé le chemin
    [code]/etc/php5/fpm/php-fpm.conf[/code]
    par contre j’ai encore une erreur
    [code]nginx: [emerg] unexpected ";" in /etc/php5/fpm/php-fpm.conf:1[/code]
    Ce qui est bizarre c’est que le fichier php-fpm.conf n’a pas été modifié il s’agit de celui d’origine

  14. attention c’est normal, car moi mon global/php-fpm.conf n’est pas le même que /etc/php5/fpm/php-fpm.conf

    alors tu va créer le fichier /etc/nginx/global/php-fpm.conf et y coller:
    [code lang= »shell »]
    location ~ \.php$ {
    # The following line prevents malicious php code to be executed through some uploaded file (without php extension, like image)
    # This fix shoudn’t work though, if nginx and php are not on the same server, other options exist (like unauthorizing php execution within upload folder)
    # More on this serious security concern in the "Pass Non-PHP Requests to PHP" section, there http://wiki.nginx.org/Pitfalls

    ##ATTENTION ici c’est pour la redirection HTTPS!######
    location ~ /wp-(admin|login) {
    return 301 https://$host$request_uri;
    }
    ################################

    try_files $uri =404;

    # PHP
    # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_param QUERY_STRING $query_string;
    fastcgi_param REQUEST_METHOD $request_method;
    fastcgi_param CONTENT_TYPE $content_type;
    fastcgi_param CONTENT_LENGTH $content_length;
    fastcgi_intercept_errors on;
    fastcgi_ignore_client_abort off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffers 4 256k;
    fastcgi_buffer_size 128k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    }
    [/code]

  15. Je viens de faire les modifications en personnalisant les chemins et j’ai eu un message d’erreur sur ton fichier /etc/nginx/global/php-fpm.conf j’ai du rajouter } à la fin

    Je vais être un peu chiant mais pour la partie SSL est-ce que tu as un tuto car je n’ai rien en place pour cette « protection ».

  16. Pour la partie SSL tu peux t’inspirer de ce que j’avais fais sous apache pour la génération des certificats: http://memo-linux.com/openssl/

    et voici le bout de fichier pour la partie https:
    [code language= » »]
    server
    {
    listen 443 ssl;
    server_name .memo-linux.com;
    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;
    root /var/www;
    index index.php;
    # Process only the requests to wp-login and wp-admin
    location ~ /(wp-) {
    auth_basic "Acces DENIED!";
    auth_basic_user_file /home/fred/www/rep01/.htpasswd;
    location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param QUERY_STRING $query_string;
    fastcgi_param REQUEST_METHOD $request_method;
    fastcgi_param CONTENT_TYPE $content_type;
    fastcgi_param CONTENT_LENGTH $content_length;
    fastcgi_intercept_errors on;
    fastcgi_ignore_client_abort off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffers 4 256k;
    fastcgi_buffer_size 128k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    }
    }
    # Redirect everything else to port 80
    location / {
    return 301 http://$host$request_uri;
    }
    }
    [/code]

    Et pour la partie htaccess: http://memo-linux.com/securiser-lacces-a-zoneminder-via-le-protocole-https/ (2ème partie)

  17. Super merci, je n’ai plus de message d’erreur je me suis occupé des certificats SSL.
    Par contre quand j’ai reload et restart le serveur pour finaliser plus rien j’ai un message comme quoi je ne peux rejoindre pas accéder au site que cela soit via le nom de domaine ou l’ip du serveur alors que celui-ci fonctionne. Idem quand j’indique la page index.html, index.php ou maintenance.html

  18. j’ai oublié voici mon fichier

    [code]server {
    listen 8080;
    server_name exemple.com;
    root /var/www/sites/lbpm/;
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log error;
    index index.php index.phtml index.html
    # Security
    include global/security.conf;
    location / {
    # This is cool because no php is touched for static content.
    # include the "?$args" part so non-default permalinks doesn’t break
    #when using query string
    try_files $uri $uri/ /index.php?$args;
    }
    # PHP-FPM
    include global/php-fpm.conf;
    location ~ /\.ht {
    deny all;
    }
    # STATICS FILES
    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
    expires max;
    log_not_found off;
    }
    }
    server
    {
    listen 443 ssl;
    server_name .exemple.com;
    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;
    root /var/www;
    index index.php;
    # Process only the requests to wp-login and wp-admin
    location ~ /(wp-) {
    auth_basic "Acces DENIED!";
    auth_basic_user_file /var/www/sites/rep01/.htpasswd;
    location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param QUERY_STRING $query_string;
    fastcgi_param REQUEST_METHOD $request_method;
    fastcgi_param CONTENT_TYPE $content_type;
    fastcgi_param CONTENT_LENGTH $content_length;
    fastcgi_intercept_errors on;
    fastcgi_ignore_client_abort off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffers 4 256k;
    fastcgi_buffer_size 128k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    }
    }
    # Redirect everything else to port 80
    location / {
    return 301 http://$host$request_uri;
    }
    }
    [/code]

  19. je viens de régler mon problème en fait c’est une question de port ;) quand on a la tête dans le guidon on ne voit pas les petites erreurs ^^

    merci BEAUCOUP et bon travail.

    PS: tu pourrais peut-être ajouter la sécurisation mysql via le script [code]mysql_secure_installation[/code]

  20. J’ai une demande privée à te faire comment puis-je te contacter ?

  21. Oui effectivement, car dans mon cas c’est Varnish, qui écoute sur le 80 et nginx sur port 8080.

    Pour MySql, j’en parle au chapitre installation de MySql, ou je mets un lien « Sécuriser MySql » ;-)
    Et il faudra que je mette à jour l’article pour remplacer MySql par MariaDB.

  22. Salut Fred!
    Vous avez fait un excellent travail avec ce tuto magnifique. Je veux tester mon nginx je suis tout début là. Bon je l’ai installé sur un ubuntu sans interface graphique version minimaliste mais lorsque je veux tester si j’ai l’écran de bienvenue de Nginx comme la votre je veux le faire sur une machine windows donc je ne vais plus faire http://localhost pour y arriver mais un peu un truc du genre 192.168.1.30 par exemple mais là ça ne marche pas et pourtant je ping cette adresse. Dans nginx où est ce qu’on peut changer ça afin que le serveur puisse être atteint par une autre machine du réseau. c’est ça mon probléme.
    SOS !

  23. Salut Insa,

    normalement, le serveur doit être accessible par n’importe quelle machine du réseau sans modification particulière sur Nginx.

    Peut-être un problème de règles d’iptables?

  24. Oui c’est vrai en fait l’erreur vient probablement de mon système ubuntu mini c’est une version minimaliste de ubuntu où j’ai décidé de ne pas installer de version graphique car je l’avais prévu pour d’autres manip mais :-).
    Je vous tiens au courant pour le reste. Merci encore.

  25. pour un serveur c’est très bien qu’il n’y ai pas d’interface graphique ;-)
    Je ne pense pas que le problème vient du fait que c’est une version minimaliste d’Ubuntu.

    Un petit test à faire dans la console en tant que root:
    [code language= » »]
    netstat -lnp | grep 80
    [/code]
    tu devrais avoir ce type de résultat:
    [code language= » »]
    tcp 0.0.0.0:80 0.0.0.0:* LISTEN 3886/nginx
    [/code]

    C’est juste pour voir si Nginx écoute bien sur le port 80 et pour toutes adresses IP.

  26. Salut Fred!
    Hier j’ai réinstallé ma machine virtuelle sur laquelle je travaillai et j’ai installé un ubuntu. En fait je me suis rendu compte que je n’avais pas bien fait le paramétrage de mon réseau. Maintenant ça marche nickel. Merci pour l’aide.
    Est ce que vous envisagez de faire un tuto pour varnish surtout pour les grand débutant comme moi :-) ? en tout cas ce sera la bienvenue!

  27. l’ Ajout de la prise en charge PHP se met dans quel fichier ?

    et le fichier index.php se met dans quel dossier ?

    car même si paraît simple je n’y arrive pas

    Merci

  28. Salut tata :-)

    Alors je vais essayé de synthétiser et d’être le plus simple :

    fichier de configuration : /etc/nginx/sites-enabled/site-web01
    répertoire du site web : /home/fred/web/site-web01

    L’ajout de la prise en compte du PHP se fait dans le fichier : /etc/nginx/sites-enabled/site-web01

    Ton fichier index.php doit se trouver dans le répertoire : /home/fred/web/site-web01/

    Les chemins sont à adapter par rapport à ton existant.

  29. C’est bien ce que j’avais fait alors. On ne peut-être plus synthétique. Merci
    Nginx :)

  30. Dans Prise en charge du PHP il y a une petite faute de frappe, c’est écrit ngnix

    Sinon j’ai réinstallé nginx sur une autre machine et j’ai eu le même souci.
    seul un [aptitude install php5-cgi] a permis qu’Nginx supporte le PHP.
    Fin.

  31. Salut tata,
    je pense que dans mon cas php5-cgi a dû s’installer en tant que dépendance via apt .
    Au cas ou, je l’ai ajouté au tuto et corrigé la faute de frappe.

    En tout cas, merci de ton complément d’informations :-)

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.