WampServer

Apache, PHP, MySQL on Windows 

 
  • Accueil forum
  • Retour à WampServer
  • presentation
  • Download
  • Addons
  • Formations
  • Alter Way

 
Voir le sujet: Précédent•Suivant
Aller à : Liste des Forums•Liste des messages•Nouvelle discussion•Recherche•Connexion•Imprimer la vue
Wampserver 2.4 - À faire après installation
Envoyé par: Otomatic (Modérateur)
Date: 02 July 2013 à 15:23

Basé sur l'installation de Wampserver 2.4 32bit sur Windows 7 Pro 64bits à jour
(Ce qui ne veut pas dire que ces modifications sont réservées à W7 64 - Elles doivent être effectuées pour tout Windows et pour Wampserver 2.4 32 ou 64 bit)
Installation dans J:\wamp avec Firefox en navigateur par défaut.

Nota 1 : Toutes les explications qui suivent ont été écrites en temps réel en fonction de l'avancement du test de l'installation de Wampserver.
Nota 2 : Les chemins données sont ceux de mon installation dans J:\wamp - À modifier en fonction de votre installation.
Ce qui veut dire qu'à chaque fois que vous verrez J:\wamp ou J:/wamp dans les explications, il vous faudra le remplacer par le chemin de votre installation, par exemple C:\wamp.
Nota 3 : Si vous ne pouvez pas consacrer deux heures d'affilée, pour les débutants, ou une bonne heure pour les confirmés, passez votre chemin et ne faites pas d'informatique.
=============================================================================
Prérequis important au sujet de l'éditeur de texte utilisé : Pour modifier les fichiers, vous devez utiliser un éditeur de texte, mais pas n'importe lequel. En effet, certains éditeurs de texte, le Bloc-Notes (notepad.exe) de Windows par exemple, ne sont pas capables de visualiser correctement des fichiers comportant de retours à la ligne de type Unix*, d'autres recodent subrepticement ces retours à la ligne de type Unix en type Windows/DOS, d'autres encore changent le jeux de caractère utilisé ou ajoutent des entêtes ; Or, il est impératif que les types de fin de ligne ou les jeux de caractères des fichiers de Wampserver ne soient pas altérés, sinon cela génèrera des impossibilités et des erreurs lors de son utilisation. C'est pourquoi je recommande fortement d'utiliser un éditeur de texte gratuit, performant et en français comme Notepad++ que vous trouverez à Notepad++ (Si vous utilisez un éditeur de texte comme UtraEdit, ça ne posera aucun problème).
* Les caractères indiquant les fins de lignes sont de trois types :
- Windows/DOS : CR - LF (Carriage Return - Line Feed) Deux octets 0x0D et 0x0A
- Unix : LF (Line Feed) Un octet 0x0A
- Mac : CR (Carriage Return) Un octet : 0x0D
=============================================================================

-- Lancement de Wampserver brut d'installation
- Icône Wampserver - Clic-droit - Language French
- Lancement Localhost, la page d'accueil apparaît
--- Nota : aucun mot de passe n'est défini après installation de Wampserver 2.4 ---
- Lancement MySQL, Console MySQL -> (Tapez touche Entrée à la demande Password) -> Fenêtre MySQL OK
- Lancement PhpMyAdmin -> (Utilisateur "root" (sans guillemets et en minuscule), mot de passe vide) Page PhpMyAdmin OK
- Quitter le navigateur
- Fermer Wampserver (Clic-droit sur icône puis Fermer)

Les modifications qui suivent comportent quatre sections :
- fichier httpd.conf
- fichier php.ini
- fichier my.ini
- PhpMyAdmin
Toutes les quatre doivent être effectuées avant de vouloir relancer Wampserver.

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-+-+-+- Fichier httpd.conf +-+-+-+
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Nota : Jusqu'à la section suivante (fichier php.ini) et sauf indication contraire, toutes les modifications se rapportent au fichier J:\wamp\bin\apache\apache2.4.4\conf\httpd.conf.

Le fichier de configuration d'Apache J:\wamp\bin\apache\apache2.4.4\conf\httpd.conf, après installation de Wampserver 2.4, correspond plus à une configuration d'Apache 2.2.x qu'à une configuration pour Apache 2.4.4.
Nous allons donc voir quelles sont les modifications à effectuer pour le rendre pleinement compatible avec la version 2.4.4 d'Apache, d'autant plus que cela simplifie beaucoup, entre autres, la manière d'autoriser les connexions.

Ouvrir, avec un éditeur de texte le fichier J:\wamp\bin\apache\apache2.4.4\conf\httpd.conf

-- On va ajouter un premier « truc » pour ne pas montrer la version apache dans les entêtes et les messages d'erreur, donc, au début du fichier, juste après # an explicit drive letter in absolute paths to avoid confusion.
ajouter :
ServerSignature Off
ServerTokens Prod
Néanmoins, si vous voulez, via PHP, vérifier quelle version Apache (Numéro et 32 ou 64 bits) est utilisée, par exemple par la variable prédéfinie $_SERVER['SERVER_SOFTWARE'], il faut autoriser les versions et la signature, donc :
ServerSignature On
ServerTokens Full
Cela donnera un résultat, pour $_SERVER['SERVER_SOFTWARE'], du genre :
Apache/2.4.4 (Win32) PHP/5.5.1
ou
Apache/2.4.4 (Win64) PHP/5.4.12
$_SERVER['SERVER_SIGNATURE'] est un peu plus disert en donnant le nom du serveur virtuel et le port :
Apache/2.4.4 (Win32) PHP/5.5.1 Server at aviatechno Port 80

-- On va ajouter une variable (Apache 2.4.x le permet) qui pourra servir dans des fichiers de configuration (alias) ou .htaccess, avec un <If Define variable> pour effectuer des paramétrages conditionnels. En plus, ça peut servir pour déterminer que l'on est sur le serveur local dans les même fichiers. Après ServerRoot "J:/wamp/bin/apache/apache2.4.4", on ajoute la (ou les) variables :
J:/wamp/... est mon chemin d'installation, à modifier en fonction de votre installation.
Define APACHE24 Apache2.4
-- Forcer l'utilisation IPv4
Remplacer
Listen 80
par
Listen 0.0.0.0:80
-- Ajouter éventuellement le support IPv6 (Si votre système le supporte)
Remplacer
Listen 0.0.0.0:80
par
Listen 0.0.0.0:80
Listen [::0]:80
-- Préciser le port (bien que ce soit la valeur par défaut) pour localhost pour faciliter les éventuels changements de port et ajouter une directive par défaut sur Off, là aussi pour faciliter les éventuels remplacements pour HostnameLookups dont la valeur par défaut est Off afin de préserver le traffic réseau des sites pour lesquels la recherche inverse n'est pas vraiment nécessaire.
Remplacer :
ServerName localhost
par
ServerName localhost:80

HostnameLookups Off
-- Par défaut, le dossier de base du serveur est accessible à tous - Ce n'est pas normal, il devrait être interdit à tous.
Remplacer :
<Directory />
    AllowOverride none
    Require all granted
</Directory>
par
<Directory />
    AllowOverride none
    Require all denied
</Directory>
-- Correction « cosmétique » mais qui peut avoir son importance
Remplacer :
    AllowOverride All
par
    AllowOverride all
-- On arrive maintenant au point important des autorisations de connexion qui sont de type Apache 2.2.x alors qu'elles devraient être Apache 2.4
Remplacer :
#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost
par
#   onlineoffline tag - don't remove
    Require local
Ça simplifie... Mais, le script PHP qui s'occupe de faire passer Online ou Offline est, lui aussi en Apache 2.2.x. Donc, pour que la modification ci-dessus ne pose pas de problèmes, il faut aussi modifier le fichier J:\wamp\scripts\onlineOffline.php
Remplacer :
$onlineText = "#   onlineoffline tag - don't remove
    Order Allow,Deny
    Allow from all";
    
$offlineText = "#   onlineoffline tag - don't remove
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
    Allow from localhost";
par
$onlineText = "#   onlineoffline tag - don't remove
    Require all granted";
    
$offlineText = "#   onlineoffline tag - don't remove
    Require local";
-- Duplication de la déclaration de fichier de log
Remplacer :
    CustomLog "logs/access.log" common
    CustomLog "J:/wamp/logs/access.log" common
par
    CustomLog "J:/wamp/logs/access.log" common
J:/wamp/... est mon chemin d'installation, à modifier en fonction de votre installation.
-- Activer les modes de compression à la volée
Remplacer :
    #AddEncoding x-compress .Z
    #AddEncoding x-gzip .gz .tgz
par
    AddEncoding x-compress .Z
    AddEncoding x-gzip .gz .tgz
-- Améliorer les performances sous Windows
Remplacer :
#EnableSendfile on
par
#EnableSendfile on

# AcceptFilter: Sous Windows, none utilise accept() au lieu d'AcceptEx(),
# et ne recycle pas les sockets entre les connexions. Ceci s'avère utile
# pour les interfaces réseau dont le pilote est défectueux, ainsi que pour
# certains fournisseurs de réseau comme les pilotes vpn, ou les filtres
# anti-spam, anti-virus ou anti-spyware.
AcceptFilter http none
AcceptFilter https none
-- On n'a pas besoin du SPM (Server Pool Management)
Remplacer :
Include conf/extra/httpd-mpm.conf
par
#Include conf/extra/httpd-mpm.conf
-- En revanche on peut valider les icônes des dossiers :
Remplacer :
# Fancy directory listings
#Include conf/extra/httpd-autoindex.conf
Par
# Fancy directory listings
Include conf/extra/httpd-autoindex.conf
Dans ce cas, il faut aussi vérifier que le module afférent est chargé, donc vérifier que la ligne suivante, toujours dans le fichier J:\wamp\bin\apache\apache2.4.4\conf\httpd.conf, est bien décommentée (Pas de # au début), bien sûr, .
LoadModule autoindex_module modules/mod_autoindex.so
Ça ne suffit pas, il faut aussi vérifier que les chemins sont bons dans le fichier J:\wamp\bin\apache\Apache2.4.4\conf\extra\httpd-autoindex.conf ; ce doit être :
Alias /icons/ "icons/"

<Directory "icons">
    Options Indexes MultiViews
    AllowOverride None
		Require all granted
</Directory>

Sauvegardez le fichier J:\wamp\bin\apache\apache2.4.4\conf\httpd.conf modifié.

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
-+-+-+- Fichier php.ini -+-+-+-
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Nota : Jusqu'à la section suivante (fichier my.ini) et sauf indication contraire, toutes les modifications se rapportent au fichier J:\wamp\bin\apache\apache2.4.4\bin\php.ini.
Avant de modifier le fichier php.ini, il est nécessaire de modifier le contenu du fichier J:\wamp\bin\php\php5.4.16\wampserver.conf qui doit être :
(J'ai supprimé les lignes faisant référence à Apache 1.3 et 2.0 vu leur incompatibilité avec PHP 5.3 et plus et il manquait les références à Apache 2.4)
<?php

$phpConf['phpIniDir'] = '.';
$phpConf['phpExeDir'] = '.';
$phpConf['phpConfFile'] = 'php.ini';

$phpConf['apache']['2.2']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.2']['LoadModuleFile'] = 'php5apache2_2.dll';
$phpConf['apache']['2.2']['AddModule'] =  '';

$phpConf['apache']['2.4']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.4']['LoadModuleFile'] = 'php5apache2_4.dll';
$phpConf['apache']['2.4']['AddModule'] =  '';

?>
Le fichier de configuration de php 5.4.16 : J:\wamp\bin\apache\apache2.4.4\bin\php.ini intègre des extensions qui n'existent plus et n'est pas dans le bon ordre, par exemple l'extension exif doit être après mbstring.

Éditer le fichier J:\wamp\bin\apache\apache2.4.4\bin\php.ini pour remplacer toute la partie concernant les extensions par :
Nota : Je mets quelques lignes avant et après pour bien montrer la partie à remplacer
; Windows Extensions
; Note that ODBC support is built in, so no dll is needed for it.
; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5)
; extension folders as well as the separate PECL DLL download (PHP 5).
; Be sure to appropriately set the extension_dir directive.
; 
extension=php_bz2.dll
;extension=php_com_dotnet.dll
extension=php_curl.dll
;extension=php_enchant.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_gmp.dll
extension=php_intl.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
extension=php_shmop.dll

; The MIBS data available in the PHP distribution must be installed. 
; See [www.php.net] 
;extension=php_snmp.dll

extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
Certaines extensions sont validées (Pas de ; au début de la ligne) et seront chargées par PHP. Il vous appartient de valider ou dévalider les extensions pour vos propres besoins.

Le chemin du fichier d'erreur de PHP est commenté (inactif) Il faut le rendre actif
Remplacer :
;error_log = "J:/wamp/logs/php_error.log"
Par
error_log = "J:/wamp/logs/php_error.log"
J:/wamp/... est mon chemin d'installation, à modifier en fonction de votre installation.

Wampserver n'utilise pas le mode CGI
Commenter les deux lignes suivantes :
cgi.force_redirect = 1

cgi.fix_pathinfo=1
c'està-dire avec un ";" (point-virgule) en début de ligne par
;cgi.force_redirect = 1

;cgi.fix_pathinfo=1

Remplacer :
date.timezone = UTC
par
date.timezone = Europe/Paris

Remplacer :
;intl.default_locale =
par
intl.default_locale = fr_FR
; This directive allows you to produce PHP errors when some error
; happens within intl functions. The value is the level of the error produced.
; Default is 0, which does not produce any errors.
intl.error_level = E_WARNING
Au sujet de l'internationalisation de PHP et des erreurs éventuelles PHP Warning : PHP Startup: in Unkonwn on line 0 voir la Notice 1 en bas de page
Remplacer
mysql.default_port =
par
mysql.default_port = 3306

Remplacer
[PostgresSQL]
par
[PostgreSQL]

D'autre part, le fichier php.ini correspond à des anciennes versions de PHP d'avant PHP 5.3. Il y a quelques options qui sont complètement obsolètes et qui n'ont plus lieu d'être pour PHP 5.4.16
Ci dessous, vous trouverez toutes les parties à supprimer de ce fichier.
Comme d'habitude, avant les suppressions, faites une sauvegarde du fichier original et n'effectuez les suppressions qu'après avoir quitté Wampserver.
Parties à supprimer
; allow_call_time_pass_reference
;   Default Value: On
;   Development Value: Off
;   Production Value: Off

; magic_quotes_gpc
;   Default Value: On
;   Development Value: Off
;   Production Value: Off

; register_long_arrays
;   Default Value: On
;   Development Value: Off
;   Production Value: Off

; session.bug_compat_42
;   Default Value: On
;   Development Value: On
;   Production Value: Off

; session.bug_compat_warn
;   Default Value: On
;   Development Value: On
;   Production Value: Off

; Enforce year 2000 compliance (will cause problems with non-compliant browsers)
; [php.net]
y2k_compliance = On

; This directive allows you to enable and disable warnings which PHP will issue
; if you pass a value by reference at function call time. Passing values by
; reference at function call time is a deprecated feature which will be removed
; from PHP at some point in the near future. The acceptable method for passing a
; value by reference to a function is by declaring the reference in the functions
; definition, not at call time. This directive does not disable this feature, it
; only determines whether PHP will warn you about it or not. These warnings
; should enabled in development environments only.
; Default Value: On (Suppress warnings)
; Development Value: Off (Issue warnings)
; Production Value: Off (Issue warnings)
; [php.net]
allow_call_time_pass_reference = Off

; Safe Mode
; [php.net]
safe_mode = Off

; By default, Safe Mode does a UID compare check when
; opening files. If you want to relax this to a GID compare,
; then turn on safe_mode_gid.
; [php.net]
safe_mode_gid = Off

; When safe_mode is on, UID/GID checks are bypassed when
; including files from this directory and its subdirectories.
; (directory must also be in include_path or full path must
; be used when including)
; [php.net]
safe_mode_include_dir =

; When safe_mode is on, only executables located in the safe_mode_exec_dir
; will be allowed to be executed via the exec family of functions.
; [php.net]
safe_mode_exec_dir =

; Setting certain environment variables may be a potential security breach.
; This directive contains a comma-delimited list of prefixes.  In Safe Mode,
; the user may only alter environment variables whose names begin with the
; prefixes supplied here.  By default, users will only be able to set
; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
; Note:  If this directive is empty, PHP will let the user modify ANY
;   environment variable!
; [php.net]
safe_mode_allowed_env_vars = PHP_

; This directive contains a comma-delimited list of environment variables that
; the end user won't be able to change using putenv().  These variables will be
; protected even if safe_mode_allowed_env_vars is set to allow to change them.
; [php.net]
safe_mode_protected_env_vars = LD_LIBRARY_PATH

; Whether or not to register the EGPCS variables as global variables.  You may
; want to turn this off if you don't want to clutter your scripts' global scope
; with user data.  This makes most sense when coupled with track_vars - in which
; case you can access all of the GPC variables through the $HTTP_*_VARS[],
; variables.
; You should do your best to write your scripts so that they do not require
; register_globals to be on;  Using form variables as globals can easily lead
; to possible security problems, if the code is not very well thought of.
; [php.net]
register_globals = Off

; Determines whether the deprecated long $HTTP_*_VARS type predefined variables
; are registered by PHP or not. As they are deprecated, we obviously don't
; recommend you use them. They are on by default for compatibility reasons but
; they are not recommended on production servers.
; Default Value: On
; Development Value: Off
; Production Value: Off
; [php.net]
register_long_arrays = Off

; Magic quotes are a preprocessing feature of PHP where PHP will attempt to
; escape any character sequences in GET, POST, COOKIE and ENV data which might
; otherwise corrupt data being placed in resources such as databases before
; making that data available to you. Because of character encoding issues and
; non-standard SQL implementations across many databases, it's not currently
; possible for this feature to be 100% accurate. PHP's default behavior is to
; enable the feature. We strongly recommend you use the escaping mechanisms
; designed specifically for the database your using instead of relying on this
; feature. Also note, this feature has been deprecated as of PHP 5.3.0 and is
; scheduled for removal in PHP 6.
; Default Value: On
; Development Value: Off
; Production Value: Off
; [php.net]
magic_quotes_gpc = Off

; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
; [php.net]
magic_quotes_runtime = Off

; Use Sybase-style magic quotes (escape ' with '' instead of \').
; [php.net]
magic_quotes_sybase = Off

; PHP 4.2 and less have an undocumented feature/bug that allows you to
; to initialize a session variable in the global scope, even when register_globals
; is disabled.  PHP 4.3 and later will warn you, if this feature is used.
; You can disable the feature and the warning separately. At this time,
; the warning is only displayed, if bug_compat_42 is enabled. This feature
; introduces some serious security problems if not handled correctly. It's
; recommended that you do not use this feature on production servers. But you
; should enable this on development servers and enable the warning as well. If you
; do not enable the feature on development servers, you won't be warned when it's
; used and debugging errors caused by this can be difficult to track down.
; Default Value: On
; Development Value: On
; Production Value: Off
; [php.net]
session.bug_compat_42 = On

; This setting controls whether or not you are warned by PHP when initializing a
; session value into the global space. session.bug_compat_42 must be enabled before
; these warnings can be issued by PHP. See the directive above for more information.
; Default Value: On
; Development Value: On
; Production Value: Off
; [php.net]
session.bug_compat_warn = On

Ne pas oublier de vérifier que le chemin déclaré dans la directive pour les extensions de PHp correspond bien à votre installation :
extension_dir = "C:/Wamp/bin/php/php5.4.x/ext/"
À modifier selon votre installation et la version de PHP AVANT de sauvegarder
Sauvegarder le fichier J:\wamp\bin\apache\apache2.4.4\bin\php.ini modifié.

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
-+-+-+- Fichier my.ini +-+-+-
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

Les modifications du fichier J:\wamp\bin\mysql\mysql5.6.12\my.ini qui vont suivrent sont indépendantes des modifications pour PhpMyAdmin.
Éditer le fichier J:\wamp\bin\mysql\mysql5.6.12\my.ini

-- Désactiver les "logs" binaires qui peuvent prendre beaucoup de place et qui ralentissent le système. Pour ce faire il faut commenter la ligne qui autorise lesdits logs ainsi que celle donnant le format:
# binary logging is required for replication
#log-bin=mysql-bin

# binary logging format - mixed recommended
#binlog_format=mixed
-- Ne pas lancer le mode réplication, donc l'ajouter sous # Replication Slave (comment out master section to use this)
# Replication Slave (comment out master section to use this)
# New for MySQL 5.6 if no slave
skip-slave-start
-- Ajouter le moteur (ENGINE) par défaut. InnoDB étant moins souple d'utilisation et sujet à quelques problèmes, nous allons choisir MYISAM, donc, ajouter les lignes suivantes :
# The default storage engine that will be used when create new tables
# New for MySQL 5.6 default_tmp_storage_engine if skip-innodb
default-storage-engine=MYISAM
default_tmp_storage_engine=MYISAM
-- Nous pouvons ajouter l'affichage des messages d'erreur en français
#Path to the language
lc-messages-dir=J:/Wamp/bin/mysql/mysql5.6.12/share
lc-messages=fr_FR
J:/wamp/... est mon chemin d'installation, à modifier en fonction de votre installation.
Puis, pour éviter un warning, après la section [wampmysqld] mettre :
explicit_defaults_for_timestamp=true

-+-+-+-+-+-+-+-+-+-+-+-+-
-+-+-+- PhpMyAdmin +-+-+-
-+-+-+-+-+-+-+-+-+-+-+-+-

Lors du lancement de PhpMyAdmin vous avez pu avoir trois messages d'avertissement « classiques » :
- 1A - Le stockage de configurations phpMyAdmin n'est pas complètement configuré, certaines fonctionnalités ont été désactivée. Pour en connaître la raison, cliquez ici.
- 2A - Votre fichier de configuration fait référence à l'utilisateur «root » sans mot de passe, ce qui correspond à la valeur par défaut de MySQL. Votre serveur MySQL est donc ouvert aux intrusions, et vous devriez corriger ce problème de sécurité.
- 3A - Une nouvelle version de PhpMyAdmin existe.

Nous allons règler ces trois avertissements, mais, tout d'abord, interessons-nous au contenu de deux fichiers de lancement (alias J:\wamp\alias\phpmyadmin.conf) et de configuration personnelle de PhpMyAdmin (J:\wamp\apps\phpmyadmin4.0.4\config.inc.php).
Le fichier alias de lancement de PhpMyAdmin fonctionne, mais est écrit pour Apache 2.2.x alors que nous sommes sous Apache 2.4.4 et, de ce fait, peut être simplifié et allégé. Le contenu du fichier J:\wamp\alias\phpmyadmin.conf que je préconise est :
Alias /phpmyadmin "J:/wamp/apps/phpmyadmin4.0.4/" 

# to give access to phpmyadmin from outside 
# replace the line
#
# Require local
#
# by
#
# Require all granted
#

<Directory "J:/wamp/apps/phpmyadmin4.0.4/">
   Options Indexes FollowSymLinks MultiViews
   AllowOverride all
   Require local
</Directory>
Attention le chemin (2 fois) est celui de mon installation, à modifier pour la vôtre.
Remarque importante : Les mêmes modifications sont à faire pour les fichiers alias sqlbuddy.conf et webgrind.conf.

Ce qu'il faut savoir, c'est qu'au lancement, PhpMyAdmin lit sa configuration par défaut dans le fichier J:\wamp\apps\phpmyadmin4.0.4\libraries\config.default.php (Qui ne doit JAMAIS être modifié), puis, éventuellement les informations de configuration personnelles dans J:\wamp\apps\phpmyadmin4.0.4\config.inc.php (Si le fichier existe), ce qui veut dire que dans ce fichier ne doivent figurer QUE les informations qui différent par rapport à celles contenues dans le fichier par défaut.
On peut voir que dans le fichier J:\wamp\apps\phpmyadmin4.0.4\config.inc.php créé par l'installation, il y a plein de « trucs » qui ne servent à rien, sinon à embrouiller le néophyte, je vous propose donc un contenu clarifié et simplifié du fichier config.inc.php, quelles que soient les versions d'Apache, de PHP et de MySQL qui devient donc :
<?php

/* Servers configuration */
$i = 0;

$cfg['blowfish_secret'] = 'a8b7c6d'; //Ce que vous voulez

/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['AllowNoPassword'] = true;

// Supprime l'avertissement aux sujets des tables pmadb
$cfg['PmaNoRelation_DisableWarning'] = true;
/* End of servers configuration */

?>
Nota : On peut remplacer "mysqli" par "mysql" (Néanmoins, mysql devient obsolète). Si "mysqli" est choisi, s'assurer que l'extension "php_mysqli" est validée pour être chargée.
On a donc procédé à un « nettoyage » en supprimant tout ce qui était redondant ou ne servait à rien ; l'utilisateur risque moins d'effectuer des mauvaises interprétations.
Si vous lancez maintenant PhpMyAdmin avec ce fichier J:\wamp\apps\phpmyadmin4.0.4\config.inc.php, vous pourrez voir que l'avertissement - 1A - (Le stockage de configurations phpMyAdmin n'est pas complètement configuré, certaines fonctionnalités ont été désactivée) à disparu avec l'ajout de '$cfg['PmaNoRelation_DisableWarning'] = true;. N'ayez pas peur, cette fonctionnalité n'est absolument pas nécessaire et n'est probablement pas utilisé par plus de 1% des utilisateurs de phpMyAdmin, et certainement pas les débutants.

Mais qu'il reste l'avertissement - 2A - au sujet du mot de passe.

2A - Mot de passe à root -
Après installation de Wampserver, MySQL s'est vu attribuer plusieurs utilisateurs dont root, avec tous les privilèges possibles. Pour sécuriser les accès à MySQL, il est donc nécessaire d'attribuer un mot de passe à l'utilisateur root.
Vous pouvez rester tel quel - vous aurez l'avertissement à chaque connexion à PhpMyAdmin - mais je vous conseille d'affecter un mot de passe à root.
ATTENTION : Après installation de Wampserver, MySQL (Donc PhpMyAdmin) est configuré de telle sorte que n'importe quel utilisateur avec n'importe quel mot de passe (ou sans mot de passe) puisse accèder à l'écran PhpMyAdmin. Mais, si l'utilisateur n'est pas "root" (sans guillemets et tout en minuscules), il n'aura aucun privilège, ne pourra donc pas mettre ou modifier un mot de passe et ne pourra pas créer de base de données. Il est donc absolument impératif de vous connecter à PhpMyAdmin en tant qu'utilisateur "root" (Sans guillemets et tout en minuscules).
Dans PhpMyAdmin, valider l'onglet "Utilisateurs" : On peut voir qu'il existe trois utilisateurs "root" sur des clients différents (Pour des explications détaillées quant aux utilisateurs MySQL, voir Gestion des utilisateurs MySQL) ainsi que deux utilisateurs "N'importe quel" avec privilèges restreints ; ceci est fait pour que quelle que soit la configuration du système et le support ou non d'IPv6, "root" puisse se connecter sans qu'il y ait d'erreur.
- 2A.1 - Je vous conseille de supprimer les deux utilisateurs "N'importe quel".
Valider les deux cases à cocher à gauche des noms utilisateur "N'importe quel" puis validez le bouton Exécuter.
On va donc être obligé de mettre le même mot de passe aux trois utilisateurs root.
- 2A.2 - Choisir le premier utilisateur : "root" @ 127.0.0.1 puis valider Changer les privilèges.
Déplacer le contenu de la fenêtre par l'ascenseur vertical pour voir "Modifier le mot de passe"
Rentrer deux fois le même mot de passe (Mot de passe et Entrer à nouveau - Pour les essais, je mets "secret" comme mot de passe)
Remarque importante : Pour éviter les problèmes d'éventuels différences de jeux de caractères entre les systèmes et claviers, ne pas utiliser de caractères accentués ou exotiques ; n'utiliser que les caractères minuscules a-z et majuscules A-Z, les chiffres 0-9 et quelques symboles comme # _ - ~ & $ % : ; c'est-à-dire uniquement le jeu de caractères ASCII.
Validez le bouton Exécuter du cadre "Modifier le mot de passe".
- 2A.3 et 2A.4 - Refaire 2A.2 pour les deux autres utilisateurs "root" à ::1 et "root" @ localhost en utilisant le même mot de passe (donc six fois le même mot de passe).
Quittez PhpMyAdmin et fermez le navigateur.
Lancez PhpMyAdmin via l'icône de Wampserver.
--- Message d'erreur : #1045 - Access denied for user 'root'@'localhost' (using password: NO)
C'est normal puisque l'on veut accéder à PhpMyAdmin alors que l'on vient de mettre un mot de passe à root. Il faut modifier le fichier J:\wamp\apps\phpmyadmin4.0.4\config.inc.php pour mettre le mot de passe affecté à root (Je rappelle que le mot de passe pour les explications est "secret", sans les guillemets). Le contenu du fichier devient :
<?php

/* Servers configuration */
$i = 0;

$cfg['blowfish_secret'] = 'a8b7c6d'; //Ce que vous voulez

/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'secret';
//$cfg['Servers'][$i]['AllowNoPassword'] = true;//À commenter ou à supprimer

// Supprime l'avertissement aux sujets des tables pmadb
$cfg['PmaNoRelation_DisableWarning'] = true;
/* End of servers configuration */

?>
Fermez le navigateur et relancez PhpMyAdmin via l'icône de Wampserver. Vous DEVEZ avoir accès à PhpMyAdmin.
Si vous voulez que le mot de passe n'apparaisse pas dans le fichier de configuration, il est possible de modifier le fichier wamp\apps\phpmyadmin4.0.4\config.inc.php comme suit. Cette modification est impérative si vous voulez avoir plusieurs utilisateurs différents.
<?php

/* Servers configuration */
$i = 0;

$cfg['blowfish_secret'] = 'a8b7c6d'; //Ce que vous voulez

/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'http';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';

// Supprime l'avertissement aux sujets des tables pmadb
$cfg['PmaNoRelation_DisableWarning'] = true;
/* End of servers configuration */

?>
Lors du lancement de PhpMyAdmin, un formulaire vous demandera le nom utilisateur et le mot de passe.

- 3A - Nouvelle version PhpMyAdmin

Installer une nouvelle version de PhpMyAdmin

Télécharger la nouvelle version de PhpMyAdmin 3.4.0.1 :
[sourceforge.net]
pour obtenir le fichier "phpMyAdmin-4.0.4.1-all-languages.zip"

Dézipper ce fichier dans wamp/apps/ ce qui donnera un dossier :
"wamp\apps\phpMyAdmin-4.0.4.1-all-languages"
que vous renommerez en :
"wamp\apps\phpmyadmin4.0.4.1"

Depuis votre précédente version de PhpMyAdmin, par exemple :
"wamp\apps\phpmyadmin4.0.4"
copier le fichier "config.inc.php" vers la nouvelle version :
"wamp\apps\phpmyadmin4.0.4.1\config.inc.php"

Éditer le fichier "wamp\alias\phpmyadmin.conf" pour remplacer les chemins (2 fois) de l'ancienne version de PhpMyAdmin par le chemin de la nouvelle,
par exemple, remplacez :
Alias /phpmyadmin "J:/Wamp/apps/phpmyadmin4.0.4/"
par
Alias /phpmyadmin "J:/Wamp/apps/phpmyadmin4.0.4.1/"
ET
<Directory "J:/Wamp/apps/phpmyadmin4.0.4/">
par
<Directory "J:/Wamp/apps/phpmyadmin4.0.4.1/">
J:/wamp/... est mon chemin d'installation, à modifier en fonction de votre installation.
----------------------------------
Ne posez pas la question de savoir pourquoi ces modifications impératives ne sont pas incluses dès le départ, dans le fichier d'installation de Wampserver. Je ne suis pas développeur de Wampserver et des remarques et demandes à ce sujet ont déjà été effectuées. Néanmoins, vous pouvez appuyer vous même cette demande via le formulaire de contact de Alter Way en demandant que les modifications de ce message soient intégrées dans une prochaine version.

Nota : Ne pas répondre à ce message. Créez une Nouvelle discussion pour y exposer votre problème, de manière claire et détaillée (Système, Versions Apache, PHP, MySQL ; message d'erreur EXACT, etc.)
----------------------------------
Notice 1 : Internationalisation et erreurs PHP Startup: in Unkonwn on line 0
Pour que l'internationlisation puisse fonctionner correctement et pour eviter les erreurs susmentionnées, il est impératif de copier certains fichiers dll depuis le dossier PHP \wamp\bin\php\php5.x.y\ vers le dossier Apache \wamp\bin\apache\apache2.x.y\bin\
Les fichiers à copier sont :
icudt??.dll
icuin??.dll
icuio??.dll
icule??.dll
iculx??.dll
icutest??.dll
icutu??.dll
icuuc??.dll

libeay32.dll
libsasl.dll
php5ts.dll
ssleay32.dll
Nota : pour les noms des dll comme "icudt??.dll", le "??" du nom est à remplacer par :
- 49 pour php 5.3.x ou 5.4.x
- 50 pour php 5.5.0 à 5.5.4
- 51 pour php 5.5.5 ou +
- 52 pour php 5.6.0 ou +
Remarques :
- Certains fichiers peuvent déjà exister, ne pas copier les fichiers qui existent déjà.



Modifie 25 fois. Derniere modification le 27/04/2014 à 15:00 par Otomatic.

Options: Répondre•Citer ce Message


Aller à : Liste des Forums•Liste des messages•Recherche•Connexion
Cette discussion a été fermée

design by jidePowered by Alter Way get firefoxget PHP