OS X Questions Fréquentes

What is the difference between XAMPP for OS X and XAMPP-VM?

  • XAMPP for OS X is a native installer for OS X. It installs Apache, PHP and other XAMPP components directly on your OS X system, in the /Applications/XAMPP folder.
  • XAMPP-VM is a virtual machine for OS X. It includes Apache, PHP and other XAMPP components and runs them in a Linux-based virtual machine on your OS X system.

For more information, refer to the blog post at https://www.apachefriends.org/blog/new_xampp_20170628.html.

.
Comment installer XAMPP sur Mac OS X?

Pour installer XAMPP, faites comme suit:

  • Ouvrez l'image DMG.
  • Démarrez l'installation par un double-click sur l'image.

C'est tout. XAMPP est installé sous le répertoire /Applications/XAMPP.

Does XAMPP include MySQL or MariaDB?

Since XAMPP 5.5.30 and 5.6.14, XAMPP ships MariaDB instead of MySQL. The commands and tools are the same for both.

Comment lancer XAMMP ?

Pour lancer XAMPP, ouvrez le Contrôle XAMPP et lancez Apache, MySQL et ProFTPD. Le nom du Contrôle XAMPP est "manager-osx".

Stopper XAMPP ?

Pour arrêter XAMPP ouvrez le Contrôle de XAMPP et arrêtez les serveurs. Le nom du Contrôle est "manager-osx".

Comment tester si tout a fonctionné ?

Tapez l'URL suivante dans un navigateur web:

http://localhost

You should see the XAMPP start page, as shown below.

XAMPP destiné à la production?

XAMPP est destiné exclusivement aux développeurs. La manière dont XAMPP est configuré donne un maximum de libertés en cours de développement. Ceci permet de gagner du temps en phase de développement, mais peut être fatal en environnement de production.

Liste des trous de sécurité dans XAMPP:

  1. L'administrateur MySQL (root) sans mot de passe.
  2. Le démon MySQL est accessible via le réseau.
  3. ProFTPD utilise le mot de passe "lampp" pour l'utilisateur "daemon".

Pour corriger la plupart des failles de sécurité, utilisez cette commande:

sudo /Applications/XAMPP/xamppfiles/xampp security

Cela lancera une petite vérification pour sécuriser l'installation de XAMPP.

Que signifient les messages d'erreur que je vois au lancement de XAMPP ?

Les messages d'erreur possibles au démarrage de XAMPP :

LAMPP-Apache is already running.
An Apache daemon is already running.

Le démarrage de XAMPP-Apache avec le script LAMPP a échoué car une instance d'Apache fonctionne déjà. Arrêter ce service pour démarrer XAMPP correctement.

LAMPP-MySQL is already running.
A MySQL daemon is already running.

Ceci est dû principalement aux mêmes raisons que l'erreur ci-dessus. Un service MySQL fonctionne déjà sur votre système. Arrêter ce service pour démarrer LAMPP correctement.

Apache doesn't seem to start. What can I do?

Cette erreur peut avoir plusieurs causes. Apache affiche cette erreur dans plusieurs situations. Pour trouver la cause exacte, faisons quelques recherches :

tail -2 /Applications/XAMPP/logs/error_log

De l'aide pour un message d'erreur ? Visitez nos pages de la communauté.

Comment mieux sécuriser mon installation XAMPP ?

Après installation, XAMPP est accessible à tous sans mot de passe et ceci n'est pas recommandé.

Pour lancer un test de sécurité simple, taper cette commande (en tant que root):

sudo /Applications/XAMPP/xamppfiles/xampp security

Maintenant, vous devriez voir ce dialogue à l'écran :

XAMPP: Quick security check...
XAMPP: MySQL is accessable via network.
XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] yes
XAMPP: Turned off.
XAMPP: Stopping MySQL...
XAMPP: Starting MySQL...
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Setting new MySQL pma password.
XAMPP: Setting phpMyAdmin's pma password to the new one.
XAMPP: MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Write the passworde somewhere down to make sure you won't forget it!!!
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Setting new MySQL root password.
XAMPP: Setting phpMyAdmin's root password to the new one.
XAMPP: The FTP password for user 'nobody' is still set to 'lampp'.
XAMPP: Do you want to change the password? [yes] yes
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Reload ProFTPD...
XAMPP: Done.

(1) Choisir un mot de passe protégera les pages de démo XAMPP (http://localhost/xampp/) par ce mot de passe. L'utilisateur est 'lampp'!

L'exécution de cette commande devrait rendre l'installation XAMPP plus sûre.

Comment activer l'extension OCI8/Oracle pour PHP ?

Pour activer l'extension OCI8/Oracle pour PHP, exécutez cette commande:

sudo /Applications/XAMPP/xamppfiles/lampp oci8

Ce dialogue commencera :

Please enter the path to your Oracle or Instant Client installation:
[/Applications/XAMPP/xamppfiles/lib/instantclient-11.2.0.3.0]
installing symlinks...
patching php.ini...
OCI8 add-on activation likely successful.
LAMPP: Stopping Apache with SSL...
LAMPP: Starting Apache with SSL...

Alors l'extension devrait être active.

How do I enable access to phpMyAdmin from the outside?

In the basic configuration of XAMPP, phpMyAdmin is accessible only from the same host that XAMPP is running on, at http://127.0.0.1 or http://localhost.

IMPORTANT: Enabling external access for phpMyAdmin in production environments is a significant security risk. You are strongly advised to only allow access from localhost. A remote attacker could take advantage of any existing vulnerability for executing code or for modifying your data.

To enable remote access to phpMyAdmin, follow these steps:

  • Edit the xamppfiles/etc/extra/httpd-xampp.conf file in your XAMPP installation directory.
  • Within this file, find the lines below.

    Alias /phpmyadmin "/Applications/XAMPP/xamppfiles/phpmyadmin" <Directory "/Applications/XAMPP/xamppfiles/phpmyadmin"> AllowOverride AuthConfig Require local

  • Then replace 'Require local' with 'Require all granted'.
  • Alias /phpmyadmin "/Applications/XAMPP/xamppfiles/phpmyadmin" <Directory "/Applications/XAMPP/xamppfiles/phpmyadmin"> AllowOverride AuthConfig Require all granted

  • Restart the Apache server using the XAMPP control panel.
Where are the main XAMPP configuration files?

The main XAMPP configuration files are located as follows:

  • Apache configuration file: /Applications/XAMPP/xamppfiles/etc/httpd.conf, /Applications/XAMPP/xamppfiles/etc/extra/httpd-xampp.conf
  • PHP configuration file: /Applications/XAMPP/xamppfiles/etc/php.ini
  • MySQL configuration file: /Applications/XAMPP/xamppfiles/etc/my.cnf
  • ProFTPD configuration file: /Applications/XAMPP/xamppfiles/etc/proftpd.conf
How do I send email with XAMPP?

To send email with XAMPP, use the PEAR Mail and Net_SMTP packages, which allow you to send email using an external SMTP account (such as a Gmail account). Follow these steps:

  • Install the Mail and Net_SMTP PEAR modules: pear install Net_SMTP Mail Note that if these packages are already installed in your system you see the messages below when executing that command: Ignoring installed package pear/Net_SMTP Ignoring installed package pear/Mail Nothing to install
  • Create the following example script in your "htdocs" directory to send an email: <?php require_once "Mail.php"; $from = "your-gmail-username@gmail.com"; $to = 'recipients@example.com'; $host = "ssl://smtp.gmail.com"; $port = "465"; $username = 'your-gmail-username@gmail.com'; $password = 'your-gmail-password'; $subject = "test"; $body = "test"; $headers = array ('From' => $from, 'To' => $to,'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port' => $port, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); if (PEAR::isError($mail)) { echo($mail->getMessage()); } else { echo("Message successfully sent!\n"); } ?>

    Remember to replace the dummy values shown with your actual Gmail address and account password. If you don't plan to use Gmail's SMTP server, replace the SMTP host details with appropriate values for your organization or ISP's SMTP server.

  • Execute the script by browsing to it using your Web browser. You should see a notification that the message was successfully sent, and the message should be delivered to the recipient email address.
Sauvegarder/Restaurer mon système XAMPP ?

Attention: La fonction sauvegarde/restauration est en développement et pourrait dysfonctionner.

Vous créerai la sauvegarde en appelant:

sudo /Applications/XAMPP/xamppfiles/xampp backup

ou

sudo /Applications/XAMPP/xamppfiles/xampp backup secret

Quand "secret" est le mot de passe root pour MySQL. Cette commande fera cette sortie:

Backing up databases...
Backing up configuration, log and htdocs files...
Calculating checksums...
Building final backup file...
Backup finished.
Take care of /Applications/XAMPP/xamppfiles/backup/xampp-backup-22-01-14.sh

Le fichier avec vos données de sauvegarde est /Applications/XAMPP/xamppfiles/backup/xampp-backup-22-01-14.sh (de l'exemple ci-dessus). Placez-le à endroit sûr.

La nouvelle machine doit disposer de la même version d'XAMPP que la machine d'origine/source.

sudo sh xampp-backup-22-01-14.sh

Vous devriez voir quelques chose comme ceci:

Checking integrity of files...
Restoring configuration, log and htdocs files...
Checking versions...
Installed: XAMPP 1.4.2
Backup from: XAMPP 1.4.2
Restoring MySQL databases...
Restoring MySQL user databases...
Backup complete. Have fun!
You may need to restart XAMPP to complete the restore.

C'est tout. Retenez que c'est une fonction beta.