Posts Tagged ‘Vista’

Installation d’une solution (W/L)amp + Jaxer: Part 6 (Configuration des serveurs)


11 jan

Apache

Nous allons créer ce que l’on appelle des Serveurs Virtuels (= Virtual Hosts => VHost): J’utilise cette technique pour bien différencier les sites sur mes serveurs en créant des adresses différentes pour chaque site. Par exemple: blog.he8us-portable et mysql.he8us-portable

Le nom du VHost est alors mysql.he8us-portable et pas seulement mysql

Remarque pratique: Dans la configuration d’Apache la dièse (#) est la marque de début de commentaire. (La fin de ligne en étant la marque de fin…)

Windows

  1. Editez le fichier « C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf » et decommentez la ligne:
    include conf/extra/httpd-vhosts.conf
  2. Ouvrez le fichier « httpd-vhosts.conf » situé dans « extra\« 
  3. Vérifiez que la ligne  suivante est présente dans le fichier (attention parfois l’astérisque est suivie d’un « :80« , si vous le laissez, ajoutez le dans chaque définition):
    NameVirtualHost *
  4. Effacez le reste du fichier et ajoutez le bloc suivant pour ajouter le site par défaut (c’est la page qui sera affichée si l’url d’accès n’est pas reconnue par le serveur):
    #default VHOST
    <VirtualHost *>
    	DocumentRoot "D:/wwwRoot/www/"
    	<Directory D:/wwwRoot/www/>
    		AllowOverride All
    		Options Indexes FollowSymLinks
    		Order Deny,Allow
    		Allow from all
    	</Directory>
    </VirtualHost>
  5. Les différents blocs (un exemple se trouve plus bas) à ajouter sont à ajouter en dessous de celui ci… (un bloc par définition de VHOST)
  6. Ajouter une ligne dans le fichier « C:\WINDOWS\system32\drivers\etc\HOSTS » par VHOST défini. (J’utilise l’utilitaire HostsMan pour la gestion de mon fichier HOST)
    127.0.0.1 NomDuVirtualHost
  7. Une fois tous les Virtuals Hosts ajoutés, relancez Apache et votre navigateur

Linux

  1. Editez le fichier « /var/apache2/sites-available/default » et remplacez son contenu par:
    NameVirtualHost *
    <VirtualHost *>
    	ServerAdmin votreAdresse@mail.be
    	DocumentRoot /wwwRoot/www/
    	<Directory /wwwRoot/www/>
    		AllowOverride All
    		Options Indexes FollowSymLinks
    		Order Deny,Allow
    		Allow from all
    	</Directory>
    </VirtualHost>
  2. Pour chaque virtual host, créez un fichier au nom du site dans « /var/apache2/sites-available/« 
  3. Une fois le fichier créé, lancez la commande suivante:
    a2ensite NomDuFichier

    et ajoutez la ligne suivante au fichier « /etc/hosts« :
    127.0.0.1 NomDuVirtualHost
  4. Lorsque tous les hôtes sont rajoutés rechargez la config d’Apache

Exemple de bloc de définition de virtual host

#phpMyAdmin VHost
<VirtualHost *>
	ServerAdmin cedric@he8us.be
	DocumentRoot "D:\server\root\phpmyadmin\"
	ServerName mysql.he8us-portable
	ErrorLog "D:\server\logs\mysql_error.log"
	CustomLog "D:\server\logs\mysql_access.log" common
	<Directory "D:\server\root\phpmyadmin\">
		AllowOverride All
		Options Indexes FollowSymLinks
		Order Deny,Allow
		Allow from all
	</Directory>
</VirtualHost>

MySQL

Pour une raison de compatibilité avec la pluspart des hébergeurs, nous allons configurer le serveur MySQL pour qu’il accepte le système de mot de passe MySQL 4 (nous travaillerons en MySQL 5). Pour ce faire:

  1. Lancez « MySQL Administrator » (avec les droits d’admin sous Linux) et entrez les infos de votre serveur Web:
    • Host: localhost
    • Username: root
    • Password: le mot de passe que vous avez choisi lors de l’installation
  2. Connectez vous et allez sur l’onglet « Service Control »
  3. Arretez le serveur
  4. Dans « Startup Variables »> »Security » cochez « Use old password » (Sous linux choisisez le fichier « mysqld »)
  5. Appliquez les changements et relancez le serveur

Une fois les virtual hosts installés et le serveur MySQL modifié, allez sur http://mysql.localhost/ on va pouvoir commencer à configurer phpMyAdmin…

Installation d’une solution (W/L)amp + Jaxer: Part 4 (Installation de PHP)


12 déc

Windows

Sous windows pas de grosse install comme nous en voyons tant mais un simple dézip du fichier se trouvant sur le site (Je sais qu’il y a un installateur mais je préfère installer PHP comme module à Apache plutôt que comme script CGI). Je l’ai dézippé dans « c:\PHP5\« 

Par contre la configuration est plus ardue que pour les autres serveurs:

  1. Dans le dossier ou vous avez dézippé PHP cherchez après « php.ini-recommended« , copiez le et renommez le en « php.ini« .
  2. Editez le comme cela:
    1. cherchez la ligne non commentée (sans point virgule devant) qui contient « error_reporting«   et vérifiez que sa valeur est bien sur « E_ALL« 
    2. même chose pour « display_errors » mais avec la valeur « On« 
    3. la ligne « extension_dir » et mettez le chemin vers le dossier ext (ici ce sera « c:/PHP5/ext/ » => prenez attention au slashes)
    4. décommentez les lignes:
      • extension=php_mysql.dll
      • extension=php_mbstring.dll
      • extension=php_mcrypt.dll
  3. Copiez le php.ini dans « c:\windows\« .
  4. Copiez la liste de fichier suivante dans « c:\windows\system32\ »:
    • libmysql.dll
    • libmhash.dll
    • libmcrypt.dll
    • libeay32.dll
  5. Editez le fichier « C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf » et recherchez la liste de lignes qui commencent par:

    LoadModule

    et ajoutez ce bloc à la fin:

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    LoadModule php5_module « C:\PHP5\php5apache2_2.dll »

  6. Modifiez également la ligne:

    DirectoryIndex index.html

    pour rajouter « index.php »:

    DirectoryIndex index.php index.html

  7. Relancez Apache et créez un fichier « index.php » dans « C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ » dans lequel vous mettez ceci:

    <?php
    phpinfo();
    ?>

  8. Ensuite pointez votre navigateur vers http://localhost/
  9. Vous devriez voir une belle page reprenant toutes les infos relatives à PHP…

Linux

  1. Depuis un terminal:

    $ sudo apt-get install php5 libapache2-mod-php5 php5-mysql php5-mcrypt

    Si apache vous dit qu’il ne peux définir le nom du serveur, ce n’est pas grave, il suffit de spécifier dans le fichier « /etc/apache2/apache2.conf »

    ServerName 127.0.0.1

  2. Redémarrez Apache
  3. Créez un fichier « phpinfo.php » dans le repertoire « /var/www/ » (avec les droit super user):

    <?php
    phpinfo();
    ?>

  4. Ensuite pointez votre navigateur vers http://localhost/phpinfo.php
  5. Vous devriez voir une belle page reprenant toutes les infos relatives à PHP…

Passons ensuite à l’installation de phpMyAdmin

Installation d’une solution (W/L)amp + Jaxer: Part 3 (Installation de MySQL)


12 déc

Bon, passons ensuite au serveur MySQL

Windows

  1. Commençons par récupérer MySQL sur le site officiel. J’ai pris l’édition communauté en version 5.1.30, le package essentials. (Vous pouvez aussi récupérer les GUI Tools, nous les utiliserons plus tard)
  2. Lors de l’installation, j’ai laissé en Typical et la configuration directe
  3. Dans la configuration je met habituellement les infos suivantes:
    1. « Detailed Configuration »
    2. Server Type: « Developer Machine »
    3. Database usage: « Multifunctional »
    4. La position des fichiers de db, je choisis souvent une partition externe pour pourvoir les garder en cas de formatage et/ou de switch windows/linux
    5. Le nombre de connections: je choisis « OLAP », voire je baisse a 15 ou 10 selon si c’est une petite configuration ou pas…
    6. Networking Option, je laisse par défaut
    7. Pour l’encoding, je choisis « latin1″
    8. Pour le service, je vous conseille de le laisser mais si vous ne préférez pas qu’il soit lancé automatiquement, n’oubliez pas de le lancer plus tard…
    9. Pour le mdp root, choisissez ce que vous voulez (sans le « enable root access from remote machines ») et je vous déconseille l’anonymous account
    10. Depuis le même site, téléchargez et installez le package MySQL Gui Tools (qui permettra de configurer MySQL)

Linux

Même chose que pour apache, un simple

sudo apt-get install mysql-server mysql-admin

depuis un terminal suffit à installer la version des dépots (5.0.67) et les outils de gestions de MySQL…

Lors de l’installation on vous demandera de choisir un mdp admin, si vous l’oubliez vous pouvez le réinitialiser plus tard en faisant:

sudo dpkg-reconfigure mysql-server-5.0

Même chose que pour apache:

sudo /etc/init.d/mysql [start|stop|restart|reload]

Pour plus d’infos sur MySQL Server: http://doc.ubuntu-fr.org/mysql

Voila une bonne chose de faite, continuons avec PHP

Installation d’une solution (W/L)amp + Jaxer: Part 2 (Installation d’Apache)


11 déc

Bien, maintenant la pratique, à partir de maintenant, je vais splitter mes articles en deux, une partie Windows et une partie Ubuntu.

Windows

  1. Commençons par récupérer Apache, pour ce faire, rendons nous sur le site officiel et récupérons la dernière stable (la 2.2.10 à l’heure où j’écris ces lignes). J’ai choisi la version sans le mod SSL car je n’en ai pas l’utilité dans le serveur que je veux créer…
  2. Installez le avec les options par défaut.
  3. Lors de l’installation, Apache demandera le nom de domaine, le nom du serveur et l’adresse mail de l’administrateur du serveur, je remplis habituellement avec des données bidons (on s’en fout un peu, c’est mon serveur de développement, pas un serveur de prod)
  4. L’installateur demandera aussi sur quel port installer Apache, laissez le port 80 si il n’y pas d’autre serveur HTTP qui tourne (genre Zope ou IIS)
  5. Une fois Apache installé, rendez vous sur http://localhost/. Si vous voyez un message « It Works », félicitations, Apache marche au poil. Sinon, ben il y’a toujours le
    format c:

    dans la ligne de commande. (Pour les neuneux gens plus sérieux, ceci est de l’humour, essayez plutôt les commentaires…)

Pour info, vous avez une nouvelle icône dans votre barre de notification, elle vous permet de redémarrer/arrêter/lancer Apache. Les fichiers de config sont dans votre dossier d’installation, répertoire « conf/ »

Linux

  1. On va faire simple:
    $ sudo apt-get install apache

    installera la version d’Apache qui se trouve dans les dépots (version 2.2.9-7)

  2. Lancez votre browser et allez sur http://localhost/. Si vous voyez un beau message « It Works! » c’est bon, vous avez réussi… (faut avouer que c’était pas complexe)

Les fichiers de config sont dans « /etc/apache2″ et la doc est disponible à http://localhost/manual/

Pour contrôler apache (lancer, arrêter, redémarrer, recharger la configuration), dans un terminal:

$ sudo /etc/ini.d/apache2 [start|stop|restart|reload]

Bien, passons ensuite à MySQL.

Installation d’une solution (W/L)amp + Jaxer: Part 1 (Arborescence)


11 déc

Etablissons les bases de tout serveur, l’arborescence. Je veux créer ce qu’on appelle des virtual hosts, un virtua-quoi??

Vitual Host

Bien vous connaissez certainement http://www.google.com et http://mail.google.com, et bien les virtual hosts permettent de d’avoir deux sites différents sur le même domaine (si vous ne connaissez pas vos bases d’adressage, wikipédia est aussi votre ami). En pratique, pourquoi ai-je besoin de ça?

Simplement parce que je suis un maniaque du rangement (virtuel seulement ^^) et j’aime bien séparer tous mes sites, je vais donc préparer quelques dossiers pour mes différents sites.

Sur mon portable (sous windows, je rappelle):

Je rassemble tout sur une partition dédiée (par exemple d:) dans laquelle j’ai créé un dossier server/.

Je crée les dossiers suivants:

  • « logs/ » qui contiendra les logs d’Apache.
  • « root/ » qui contiendra les différents sites.
    • « www/ » qui contiendra le site par défaut (quand on arrive sur mon portable, via un mauvais virtual host).
    • « mysql/ » qui contiendra un site permettant la gestion de MySQL (pour les curieux, c’est PHPMyAdmin).
    • « blog/ » qui contient ma version de travail de ce même blog.
  • « sessions/ » qui contiendra les sessions d’utilisateurs de PHP

Voila pour ma machine de Dev, passons à ma mon serveur de test.

Mon serveur (sous Ubuntu):

Bon, ici rien de bien complexe, même chose que sous windows, j’utilise une partition dédiée accessible à l’adresse /media/server/ et j’y crée les mêmes dossiers…

Passons enfin aux choses sérieuses, l’installation du serveur Web

Installation d’une solution (W/L)amp + Jaxer: Part 0 (Introduction)


11 déc

Ceci est la première partie d’une série sur la mise en place d’une solution ApachePHPMySQL (et accessoirement Jaxer) sous Windows XP/Vista (32Bits) et Ubuntu (8.10 Intrepid Ibex dans ce tuto). Avec comme cas pratique la création de mon serveur de test (sous Linux, et accessoirement géré à distance) ainsi que celui de développement sur mon portable qui tourne sous Vista Ultimate en 32Bits.

Introduction

Ici point encore de blabla technique mais seulement un overview des différents éléments.

Apache

Tout d’abord, commençons par la base du système. Apache est un serveur HTTP open-source pour Windows et Unix créé par la « Apache Software Foundation« . Ce projet fournit un serveur sécurisé, efficace, extensible et répondant aux standards mis en place sur le web. Apache est le serveur HTTP le plus populaire depuis 1996. La version utilisée dans ce tuto est la version 2.2.10 pour Windows et 2.2.X pour Ubuntu.

Vous pouvez le télécharger sur la page du projet

PHP

Continuons ensuite par PHP (un accronyme récursif pour Hypertext PreProcessor). PHP est un langage dit « coté serveur », il est éxécuté avant l’envoi de la page au client. La communauté PHP est très productive et à développé bon nombre de bibliothèques pour ajouter de nouvelles fonctionnalités.

On peux le trouver sur sa page officielle

MySQL

Passons ensuite à MySQL, un des système de gestion de base de données les plus répandu sur le web.

On peut télécharger la version communautaire sur son site

Jaxer

Terminons enfin par Jaxer, un module pour apache édité par la société Aptana Inc qui permet de programmer en Javascript du coté serveur en ajoutant beaucoup des fonctionnalités d’un langage server-side telles que les connections aux bases de données, etc, etc…

Il est téléchargeable sur le site de l’éditeur

Bien, maintenant que nous en savons un peu plus sur les systèmes que nous allons utiliser, entrons dans le vif du sujet avec la création de l’arborescence

Serendipity

La vision d'un Geek sur le monde


Bear