Breaking News
Loading...
lundi 25 août 2014

Serveur Web Nginx


Installer un serveur Web Avec Nginx sur RaspberryPi model v2.

Sur ce tuto Vous entends me dire "pourquoi installer Nginx plutôt qu’Apache ?"
Trés bonne questions pourquoi choisir un serveur secondaire plutôt que l’acteur principal du marché ?

La réponse est simple, les performances !Nginx est un serveur dit « Asynchrone » il peut exécuter plusieurs actions en même temps, sans attendre la fin de la première pour passer à la seconde.alors que apache(je vous invites a faire des recherche!Hein).(ci dessous souce de © W3Techs.com)

© W3Techs.comusagechange since
1 July 2014
1.Apache60.0%-0.4%
2.Nginx21.5%+0.5%
3.Microsoft-IIS13.6%-0.1%
4.LiteSpeed2.0%
5.Google Servers1.3%
percentages of sites




Donc, Nginx répond beaucoup plus vite qu’Apache,il permet de supporter plus d’utilisateurs simultanément et surtout il consomme moins de RAM qu’Apache, ce qui très important compte tenu du fait que la Raspberry, même dans son modèle B, ne dispose que de 512Mo de RAM non extensibles.


En contreparties (et oui ...) Nginx ne réagit pas toujours comme Apache2 avec PHP et Nginx ne supporte pas les fichiers .htaccess(enfin difficilement), que vous devrez convertir pour Nginx, et que vous ne mettrez pas dans un fichier dans le répertoire cible, mais dans le fichier de configuration du site.


Cependant, Nginx vos vraiment le coup, et c’est sans doute un meilleur choix qu’Apache pour un serveur web sur la Raspberry.


C'est Parti !Installer le serveur Nginx pour Raspbian



Nous allons utiliser le gestionnaire de pacquet « aptitude » pour installer Nginx et php-fpm sur la Raspberry depuis les dépots Raspbian.


Pour cela, il vous suffit d’utiliser la commande :


sudo aptitude install nginx php5-fpm 



Nous avions dit que nous n’installerions pas PHP. Cependant, Nginx n’est pas lié automatiquement a PHP. Lors du développement de Nginx, le choix a été fait d’utiliser plutôt PHP-FMP qu’un PHP plus traditionnel. Par conséquent, on va installer php-fpm pour gérer les fichiers PHP avec Nginx.


Une fois l’installation finie, il est possible que Nginx ne démarre pas tout seul.Lancez donc la commande suivante pour redémarrer (ou démarrer si ce n’est pas déjà fait) Nginx :


sudo /etc/init.d/nginx restart 



Vous pouvez vérifier si votre serveur marche correctement de la même façon que pour vérifier si un serveur Apache fonctionne, c’est-à-dire en lançant une requête sur le port 80 de votre serveur. Vous obtiendrez alors une page marquée « Welcome to nginx! ».


Configurer Nginx

Maintenant que Nginx est bien installé, il va falloir rajouter un tout petit peu de configuration. Nous n’allons pas ici vous expliquer comment se configure un serveur Nginx, nous allons simplement modifier le dossier contenant vos sites,ajouter les pages index.php comme pages par défaut, et enfin ajouter PHP.


Pour cela, éditez le fichier « /etc/nginx/sites-available/default », par exemple via la commande :
nano /etc/nginx/sites-available/default 

et cherchez les lignes


root /usr/share/nginx/www;


index index.html index.htm; 

pour les remplacer par les lignes
root /var/www;


index index.html index.htm index.php; 

Cela va changer le répertoire général de Nginx pour le répertoire « /var/www « (comme c’était le cas pour Apache), et cela va rajouter une redirection automatique vers les fichiers « index.php » pour les dossiers du sites, du moins si il existe, comme c’était là aussi le cas pour Apache.


Nous allons maintenant activer php-fpm pour Nginx. Pour cela, cherchez les lignes


#location ~ \.php$ {


#fastcgi_split_path_info ^(.+\.php)(/.+)$;


# NOTE: vous devrais avoir "cgi.fix_pathinfo = 0;" Dans php.ini

# Avec php5-cgi seul:


#fastcgi_pass 127.0.0.1:9000;


# Avec php5-fpm:

#fastcgi_pass unix:/var/run/php5-fpm.sock;

#fastcgi_index index.php;

#include fastcgi_params;

#} 

et décommentez les lignes nécessaires, afin d’obtenir le résultat suivant :


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 fastcgi_params;


} 


Une fois les modifications enregistrées, vous devez redémarrer Nginx, afin d’appliquer les modifications, toujours avec la commande :


sudo /etc/init.d/nginx restart 

Vous n’avez plus qu’à vérifier le bon fonctionnement du serveur comme précédemment.


Erreur 403 forbidden, un classique de Nginx.

Il est possible que vous obteniez une erreur « 403 forbidden ». Cela peux signifier deux choses.
Page d'erreur 403 d'un serveur Nginx
L’erreur 403 est fréquente avec Nginx, mais simple à corriger.


Tout d’abord, cela peut signifier que Nginx ne trouve pas de fichier à afficher, mais contrairement à Apache, il ne va pas lister les fichiers du dossier. Pour tester cela, il vous suffit de créer un fichier index.html dans le répertoire « /var/www », et de réessayer d’accéder à votre site.
Par exemple via la commande :


echo 'Nginx marche !' > /var/www/index.html


Si le problème venait bien de là, vous devriez obtenir une page marquée « Nginx marche ! « . À vous maintenant de mettre un fichier d’index qui vous convienne.


En revanche, si cela ne résous pas le problème, alors le problème est probablementque Nginx ne peut accéder au répertoire « /var/www ». Dans ce cas, il faut donner le répertoire à « www-data », avec les autorisations suffisantes.


Pour cela, utilisez les deux lignes suivantes :


chown www-data:www-data /var/www


chmod 744 /var/www


Voilà, Nginx est installé sur la Raspberry, et votre serveur web Raspbian devrait tourner encore plus vite qu’avant !


le tutoriel est tiré de la source (http://raspbian-france.fr/installer-nginx-raspbian-accelerez-serveur-web-raspberry/)

0 commentaires:

 
Toggle Footer