Réaliser votre site


Tester en local "sous Windows" avec un WAMP votre CMS

Avant de mettre en ligne ou en production un site Web, il est préférable de réaliser et tester en local (sur son ordinateur).


Voici donc quelques plate-formes de développement Web, des packages "WAMP" ou plutôt W-A-M-P Windows-Apache-MySql-PHP

Nota : avant de se lancer dans les opérations il est nécessaire d’avoir quelques connaissances de base d''un serveur web et bien sur bien sur les pré requis  pour l'installation et la gestion du CMS (gestion de contenu Web)


Dans l’ordre de mes préférences :

Pour PHP 5.5.x Wampserver 2.5 n’est pas compatible avec Windows XP, même SP3
- WampServer une plateforme qui avait ma préférence pour des possibilités avec ces "addons" ou des manipulations manuelles (Fichier 35 Mo)

Avantage : Les add-ons sont nombreux pour PHP, Apache, Mysql

Les anciennes versions de Wampserver sont chez Sourceforge.
Pour information vous pouvez tester PHP 5.4 ou autre avec WampServer 2.2a en effectuant l'installation manuelle de PHP 5.4.x

La dernière version  Wampserver (Apache : 2.4.9 MySQL : 5.6.17 PHP : 5.5.12 PHPMyAdmin : 4.1.14 SqlBuddy : 1.3.3 XDebug : 2.2.5) fonctionne uniquement au minimun avec  Vista


- EasyPHP

Je trouve ce WAMP par très pratique donc plutôt déconseillé.
Attention version portable sur la clef USB, mais il faut l'installer sous windows, donc ce n'est pas du portable direct sauf à décompacter (avec innounp)  le fichier EasyPHP-X.x.x.x-setup.exe pour en extraire les fichiers afin de les "mettre sur la clef USB"



- XAMPP for WindowSite Web en anglais 
Non testé et déconseillé car le fichier est de 100 Mo comprenant des programmes inutiles (comme OpenSSL 0.9.8, Webalizer 2.23-04, Mercury Mail Transport System 4.63, FileZilla FTP Server 0.9.41, Tomcat 7.0.42 , Strawberry Perl 7.0.42 Portable


Il existe d'autres systèmes W-A-M-P mais je n’ai pas testé ou alors je n'ai pas été convaincu.


Pour tous les packages, l’installation se fait simplement.

le dossier /www/ contiendra vos fichiers ou vous dossier du futur CMS à tester.


Si vous souhaitez avoir un dossier /www/ à un autre endroit de votre disque il faudra configurer certains fichiers.

- Pour WampServer Modifier les fichiers
- \wamp\scripts\config.inc.php 
remplacer $wwwDir = $c_installDir.'/www'; par  $wwwDir = 'disque:/votre_dossier/';
- \wamp\bin\apache\apache2.x.x\conf\httpd.conf
remplacer DocumentRoot "X:/Dev_web/wamp/www/" par  DocumentRoot "disque:/votre_dossier/"
remplacer<Directory "X:/Dev_web/wamp/www/"> par  <Directory "disque:/votre_dossier/">



- Pour EasyPHP : Modifier le fichier EasyPHP\conf_files\httpd.conf
remplacer DocumentRoot "${path}/www" par  DocumentRoot "disque:/votre_dossier/"
remplacer <Directory "${path}/www"> par  <Directory "disque:/votre_dossier/">
Attention ces informations sont données à titre indicatifs et peuvent évoluées en fonction des versions et mises à jour des logiciels.



CONSEILS (donnés avec WAMP mais reste valable pour les autres! )

A- Passer error_reporting en mode production en  local
B - Afficher les erreurs de codage PHP
C- Utiliser le SMTP en  local
D- Installer Xdebug
E -Utiliser le  mod_rewrite (réécriture d'url) avec CMS madesimple



A - Passer error_reporting en mode production (Configuration du php.ini)

Il suffit de se servir du "TrayIcon" Wampserver dans la zone de notification en bas à droite
Clic gauche  -> PHp-> Php.ini -> cela ouvre le fichier php.ini et

php.ini

donc les modifications ont à faire :
chercher
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
...
; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
; http://php.net/error-reporting
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

Activer le rapport d'erreur de niveau E_NOTICE durant le développement
remplacer la ligne error_reporting =... par : error_reporting  = E_ALL | E_NOTICE
Nota en PHP 5.4.x et plus E_STRICT devient une partie de E_ALL
pour information ci-dessous, extrait du fichier PHP.ini

Ensuite sauver le fichier .... et Redémarrer les services (se servir du "TrayIcon" Wampserver dans la zone de notification en bas à droite, Clic gauche )


B - Si vous souhaitez afficher les erreurs de codage PHP (mode développement)
- error_reporting= E_ALL | E_NOTICE
- et vérifier que display_errors = On



C - Utiliser le SMTP (Configuration du php.ini)

Il suffit de se servir du "TrayIcon" Wampserver dans la zone de notification en bas à droite
Clic gauche  -> PHp-> Php.ini -> cela ouvre le fichier php.ini (comme plus haut)

- rechercher
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.free.fr -----------> mettre ici SON SMPT (ici celui de Free)
; http://php.net/smtp-port
smtp_port = 25 ----------------> mettre ici SON port SMPT

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = jc.moi@monmail.com -----------> mettre ici son mail si besoin


D - installer Xdebug
1- Il faut récupérer la DLL ici : http://www.xdebug.org/download.php
Suivant la version de PHP utiliser prendre a DLL qui convient.
Par exemple pour PHP 5.4.40 en 32 bits Prendre PHP 5.4 VC9 TS (32 bit) soit le fichier php_xdebug-2.3.2-5.4-vc9.dll.
2- Mettre le fichier php_xdebug-2.3.2-5.4-vc9.dll dans le dossier \php5.4.40 de votre WAMP
3- Éditer le fichier : vous devez trouver ; XDEBUG Extension
4- Ajouter zend_extension = "X:/Dev_web/wamp/bin/php/php5.4.40/xdebug/php_xdebug-2.3.2-5.4-vc9.dll"
5-Relancer le serveur
Pour information consulter le site web [PHP] Utiliser un débogueur pour PHP : Xdebug


E - mod_rewrite (réécriture d'url) avec CMS madesimple

Il suffit de se servir du "TrayIcon" Wampserver dans la zone de notification en bas à droite
Clic gauche. (1)
Puis Apache (2)-> Modules Apache (3) -> cocher rewrite_module (4)
Clic gauche sur l’icône
et Redémarrer les services (5) (se servir du "TrayIcon" Wampserver dans la zone de notification en bas à droite, Clic gauche )
mod_rewrite

Ajouter le .htacces (à la racine du site)
#Options -Indexes
RewriteEngine On
# RewriteBase /modossier_cms si le .htaccess se trouve à la racine de www
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteCond %{REQUEST_FILENAME} !-d [NC]
RewriteRule ^(.+)$ index.php?page=$1 [QSA]


Modifiez votre config.php :
$config['url_rewriting'] = 'mod_rewrite';
#Extension to use if you're using mod_rewrite for pretty URLs.
$config['page_extension'] = '.html';

#NOTA1 $config['use_hierarchy'] = true; // a été supprimé en version 1.8.0.et 1.8.1
#NOTA2 $config['use_hierarchy'] = true; // revenu en en version 1.8.2

Pour avoir des URLs du type : http://localhost/modossier_cms/mapage.html
NOTA2 $config['use_hierarchy'] = true;
Permet d'avoir des URls de news (articles)
http://localhost/modossier_cms/news/8/39/CMS-Made-Simple-182-Toliara.html


Document  http://jc.etiemble.free.fr/abc/ JCE - version 2015-05-13-0 CC_licence


Page précédente : CHMOD avec Filezilla
Page suivante : Postgresql + WAMP