Salut Lyhonail.
Pour accéder à MySql au travers d'une application depuis un ordinateur qui se trouve sur internet, vous devez :
1) définir dans le fichier host de votre serveur (là où se trouve Apache et MySql), le couple suivant :
nom_de_votre_site 192.168.1.33
Cette adresse IP est l'adresse de votre serveur. Elle est doit fixe !
2) avoir un nom de domaine pour votre site.
3) utiliser un virtualHost dans le fichier "httpd.conf" d'Apache.
4) dans ce virtualHost, vous devez autoriser tout le monde, en mettant "Require all granted".
5) au niveau de la box (le routeur), là où se trouve votre serveur, vous devez rediriger le flux entrant (NAT) vers votre serveur Apache.
6) de respecter les ports :
--> port 80 pour le protocole HTTP dans Apache.
--> port 3306 pour MySql.
7) définir dans MySql, un compte utilisateur pour l'accès à votre application.
Ce compte aura les privilèges Insert, Update, select et delete sur la base de données.
Mettre comme hôte, le symbole "%" qui signifie tout le monde.
8) au niveau applicatif, définir comme accès avec les paramètres suivants :
--> nom de votre site, ou éventuellement, l'adresse ip de votre serveur.
--> nom de la base de données
--> nom du compte MySql
--> mot de passe du compte MySql.
Voici un exemple d'accès en PDO :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <?php
/*-----------------------------------------------------*/
/* Informations pour la connexion à la base de données */
/*-----------------------------------------------------*/
$nom_du_serveur = "mysql:host=localhost;dbname=test";
$nom_utilisateur = "test";
$mot_de_passe = "test";
$options = array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES latin1",
PDO::ATTR_CASE => PDO::CASE_LOWER,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_PERSISTENT => false
);
/*----------------------*/
/* Connexion au Serveur */
/*----------------------*/
try {
$link = new PDO($nom_du_serveur, $nom_utilisateur, $mot_de_passe, $options);
}
catch (Exception $e)
{
echo "Connection à MySql impossible : ", $e->getMessage();
die();
}
?> |
@+
Partager