Installer Apache, PHP et MySQL sous Ubuntu permet de créer une stack LAMP complète : Linux, Apache, MySQL ou MariaDB, et PHP. C’est la base classique pour héberger un site PHP, tester WordPress en local, développer une application web ou préparer un serveur de préproduction.
À l’époque, on pouvait résumer l’installation à une seule commande. Cela fonctionne encore pour un test rapide. Mais une installation propre demande quelques étapes supplémentaires : pare-feu, VirtualHost, droits de fichiers, test PHP, connexion à la base de données et vérification des logs.
Voici une méthode moderne pour installer un environnement LAMP sous Ubuntu, sans transformer votre serveur en buffet libre pour erreurs 403 et fichiers mal placés.
LAMP, cela veut dire quoi ?
LAMP désigne une pile logicielle composée de quatre briques :
- Linux : le système d’exploitation, ici Ubuntu ;
- Apache : le serveur web qui répond aux requêtes HTTP ;
- MySQL ou MariaDB : le serveur de base de données ;
- PHP : le langage exécuté côté serveur.
Cette stack reste très utilisée pour WordPress, de nombreux CMS, des applications PHP maison, des outils internes et des environnements de développement.
Pour un serveur de production très performant, on peut préférer Apache avec PHP-FPM, ou Nginx avec PHP-FPM. Mais pour une installation simple, locale ou pédagogique, Apache avec le module PHP reste parfaitement valable.
MySQL ou MariaDB : que choisir ?
Ubuntu propose généralement MySQL dans ses dépôts. MariaDB est une alternative très courante, compatible avec beaucoup d’applications prévues pour MySQL.
| Base de données | À privilégier si… |
|---|---|
| MySQL | Vous voulez rester sur l’écosystème MySQL officiel, ou votre application le demande explicitement. |
| MariaDB | Vous voulez une alternative libre très utilisée, souvent disponible facilement dans les dépôts Linux. |
Pour WordPress, les deux conviennent généralement. Dans ce guide, je donne les commandes pour MySQL, puis l’alternative MariaDB quand elle est pertinente.
Avant de commencer
Ce guide suppose que vous utilisez une version récente d’Ubuntu, avec un compte disposant de droits sudo.
Commencez par mettre à jour la liste des paquets :
sudo apt update
Puis installez les mises à jour disponibles :
sudo apt upgrade
Si vous êtes sur un serveur distant, vérifiez aussi que votre accès SSH fonctionne correctement avant de modifier le pare-feu. C’est bête à dire, mais beaucoup de grandes solitudes administrateur commencent par un ufw enable un peu trop enthousiaste.
Installer Apache
Installez Apache avec APT :
sudo apt install apache2
Vérifiez que le service tourne :
systemctl status apache2 --no-pager
Vous pouvez aussi tester dans le navigateur :
http://localhostCode language: JavaScript (javascript)
Sur un serveur distant, utilisez l’adresse IP du serveur :
http://ADRESSE_IP_DU_SERVEURCode language: JavaScript (javascript)
Si la page par défaut Apache apparaît, le serveur web répond correctement.
Autoriser Apache dans le pare-feu UFW
Si UFW est actif, autorisez le trafic HTTP et HTTPS :
sudo ufw allow "Apache Full"Code language: JavaScript (javascript)
Vérifiez les règles :
sudo ufw status
Pour un serveur distant, gardez aussi SSH autorisé :
sudo ufw allow OpenSSH
Ensuite seulement, activez UFW si nécessaire :
sudo ufw enable
Installer MySQL
Installez MySQL Server depuis les dépôts Ubuntu :
sudo apt install mysql-server
Vérifiez que le service fonctionne :
systemctl status mysql --no-pager
Lancez ensuite l’assistant de sécurisation si disponible :
sudo mysql_secure_installation
Selon la version et la configuration, l’utilisateur root MySQL peut utiliser l’authentification par socket Unix. Cela signifie que vous vous connectez à MySQL avec sudo mysql, sans mot de passe MySQL séparé pour root.
Testez l’accès :
sudo mysql
Puis quittez :
exit;Code language: PHP (php)
Alternative : installer MariaDB
Si vous préférez MariaDB, installez plutôt :
sudo apt install mariadb-server
Vérifiez le service :
systemctl status mariadb --no-pager
Lancez l’assistant de sécurisation :
sudo mariadb-secure-installation
Sur certaines versions, la commande historique suivante peut aussi être disponible :
sudo mysql_secure_installation
Ne mélangez pas MySQL et MariaDB sur le même serveur sans raison claire. Choisissez une base et gardez une ligne propre. Les serveurs SQL n’aiment pas les colocations improvisées.
Installer PHP pour Apache
Pour une stack LAMP simple, installez PHP, le module Apache et l’extension MySQL pour PHP :
sudo apt install php libapache2-mod-php php-mysql
Installez aussi quelques extensions PHP courantes, utiles pour WordPress et beaucoup d’applications PHP :
sudo apt install php-cli php-curl php-gd php-intl php-mbstring php-xml php-zip php-bcmath php-imagick
Vérifiez la version de PHP :
Votre hébergement est devenu un problème ?
Serveur partagé saturé, limites PHP trop basses, support qui répond en 48h — à un certain niveau de trafic, l'hébergement mutualisé devient le goulot. Je migre et configure des serveurs dédiés.
Parlons de votre infrastructure →php -v
Redémarrez Apache :
sudo systemctl restart apache2
Cette méthode utilise PHP via le module Apache. Pour un serveur de production avec plusieurs sites, plusieurs versions PHP ou une meilleure séparation, PHP-FPM sera souvent préférable. Mais pour un LAMP simple, cette approche reste rapide et claire.
Tester PHP dans Apache
Créez un fichier de test :
echo '<?php phpinfo();' | sudo tee /var/www/html/info.phpCode language: PHP (php)
Ouvrez ensuite :
http://localhost/info.phpCode language: JavaScript (javascript)
Sur un serveur distant :
http://ADRESSE_IP_DU_SERVEUR/info.phpCode language: JavaScript (javascript)
Si la page PHP Info apparaît, Apache exécute bien PHP.
Supprimez ensuite ce fichier. Il expose trop d’informations sur votre environnement :
sudo rm /var/www/html/info.phpCode language: JavaScript (javascript)
Créer un VirtualHost Apache propre
Évitez de travailler directement dans /var/www/html. Créez plutôt un VirtualHost dédié. C’est plus propre, plus proche d’un vrai serveur et beaucoup plus simple à maintenir quand vous avez plusieurs sites.
Créez un dossier pour le site :
sudo mkdir -p /var/www/lamp-test/publicCode language: PHP (php)
Attribuez le dossier à votre utilisateur :
sudo chown -R "$USER":www-data /var/www/lamp-testCode language: JavaScript (javascript)
Définissez des permissions raisonnables :
find /var/www/lamp-test -type d -exec chmod 755 {} \;
find /var/www/lamp-test -type f -exec chmod 644 {} \;Code language: JavaScript (javascript)
Créez une page PHP simple :
cat > /var/www/lamp-test/public/index.php <<'PHP'
<?php
declare(strict_types=1);
echo 'LAMP fonctionne.';
PHPCode language: PHP (php)
Créez ensuite le fichier VirtualHost :
sudo nano /etc/apache2/sites-available/lamp-test.conf
Ajoutez cette configuration :
<VirtualHost *:80>
ServerName lamp-test.local
DocumentRoot /var/www/lamp-test/public
<Directory /var/www/lamp-test/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/lamp-test-error.log
CustomLog ${APACHE_LOG_DIR}/lamp-test-access.log combined
</VirtualHost>Code language: PHP (php)
Activez le site :
sudo a2ensite lamp-test.confCode language: CSS (css)
Activez aussi rewrite, utile pour WordPress et beaucoup d’applications PHP :
sudo a2enmod rewrite
Vérifiez la configuration Apache :
sudo apache2ctl configtest
Rechargez Apache :
sudo systemctl reload apache2
Tester le domaine local
Sur une machine locale, ajoutez le domaine dans /etc/hosts :
sudo nano /etc/hosts
Ajoutez :
127.0.0.1 lamp-test.localCode language: CSS (css)
Ouvrez ensuite :
http://lamp-test.localCode language: JavaScript (javascript)
Vous devez voir :
LAMP fonctionne.
Sur un serveur distant, remplacez lamp-test.local par un vrai domaine ou un sous-domaine pointant vers l’adresse IP du serveur.
Créer une base de données et un utilisateur
Pour une application PHP ou un WordPress, ne travaillez pas avec l’utilisateur root MySQL. Créez une base et un utilisateur dédiés.
Connectez-vous à MySQL :
sudo mysql
Créez une base :
CREATE DATABASE lamp_test CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Créez un utilisateur dédié :
CREATE USER 'lamp_user'@'localhost' IDENTIFIED BY 'mot_de_passe_long_et_unique';Code language: JavaScript (javascript)
Accordez les droits sur cette base uniquement :
GRANT ALL PRIVILEGES ON lamp_test.* TO 'lamp_user'@'localhost';Code language: JavaScript (javascript)
Rechargez les privilèges et quittez :
FLUSH PRIVILEGES;
EXIT;Code language: PHP (php)
Testez l’utilisateur :
mysql -u lamp_user -p lamp_test
Si la connexion fonctionne, votre base est prête.
Tester la connexion MySQL depuis PHP
Créez un fichier temporaire de test :
nano /var/www/lamp-test/public/db-test.phpCode language: PHP (php)
Ajoutez :
<?php
declare(strict_types=1);
$host = 'localhost';
$dbname = 'lamp_test';
$username = 'lamp_user';
$password = 'mot_de_passe_long_et_unique';
try {
$pdo = new PDO(
sprintf('mysql:host=%s;dbname=%s;charset=utf8mb4', $host, $dbname),
$username,
$password,
[
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
]
);
echo 'Connexion MySQL OK.';
} catch (PDOException $exception) {
http_response_code(500);
echo 'Erreur de connexion à la base de données.';
}Code language: HTML, XML (xml)
Ouvrez :
http://lamp-test.local/db-test.phpCode language: JavaScript (javascript)
Si tout va bien, vous verrez :
Connexion MySQL OK.
Supprimez ensuite le fichier de test, car il contient des identifiants en clair :
rm /var/www/lamp-test/public/db-test.phpCode language: PHP (php)
Où sont les fichiers de configuration ?
Voici les emplacements importants à connaître :
| Élément | Chemin |
|---|---|
| Configuration principale Apache | /etc/apache2/apache2.conf |
| Sites disponibles | /etc/apache2/sites-available/ |
| Sites activés | /etc/apache2/sites-enabled/ |
| Modules disponibles | /etc/apache2/mods-available/ |
| Modules activés | /etc/apache2/mods-enabled/ |
| Racine web par défaut | /var/www/html |
| Logs Apache | /var/log/apache2/ |
| Configuration PHP Apache | /etc/php/*/apache2/php.ini |
| Configuration PHP CLI | /etc/php/*/cli/php.ini |
Le caractère * dépend de la version PHP installée. Par exemple : /etc/php/8.3/apache2/php.ini.
Commandes Apache utiles
Voici les commandes à garder sous la main :
# Vérifier l'état d'Apache
systemctl status apache2 --no-pager
# Démarrer Apache
sudo systemctl start apache2
# Arrêter Apache
sudo systemctl stop apache2
# Redémarrer Apache
sudo systemctl restart apache2
# Recharger la configuration sans couper brutalement le service
sudo systemctl reload apache2
# Tester la configuration
sudo apache2ctl configtest
# Lister les VirtualHosts actifs
sudo apache2ctl -S
# Activer un site
sudo a2ensite nom-du-site.conf
# Désactiver un site
sudo a2dissite nom-du-site.conf
# Activer un module
sudo a2enmod rewrite
# Désactiver un module
sudo a2dismod nom_moduleCode language: PHP (php)
Commandes MySQL utiles
Quelques commandes pratiques pour administrer MySQL ou MariaDB :
# Se connecter en administrateur local
sudo mysql
# Vérifier l'état du service MySQL
systemctl status mysql --no-pager
# Vérifier l'état du service MariaDB
systemctl status mariadb --no-pager
# Lister les bases
SHOW DATABASES;
# Lister les utilisateurs
SELECT user, host FROM mysql.user;
# Voir les droits d'un utilisateur
SHOW GRANTS FOR 'lamp_user'@'localhost';Code language: PHP (php)
Régler PHP pour le développement
En local, vous pouvez afficher les erreurs PHP pour faciliter le développement. En production, il faut les journaliser sans les afficher aux visiteurs.
Ouvrez le fichier PHP d’Apache :
php --ini
Repérez le fichier chargé pour Apache, puis éditez par exemple :
sudo nano /etc/php/8.3/apache2/php.ini
Pour un environnement local :
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
Pour un serveur public :
display_errors = Off
display_startup_errors = Off
error_reporting = E_ALL
log_errors = On
Après modification, redémarrez Apache :
sudo systemctl restart apache2
PHP-FPM ou libapache2-mod-php ?
Ce guide utilise libapache2-mod-php, car c’est la méthode LAMP simple et rapide.
Mais pour un serveur de production, surtout avec plusieurs sites, PHP-FPM présente souvent des avantages :
- meilleure séparation entre sites ;
- pools PHP configurables ;
- meilleure gestion des ressources ;
- possibilité de faire tourner plusieurs versions PHP ;
- configuration plus proche des stacks modernes Apache/Nginx.
Si votre objectif est d’héberger des sites clients, une boutique WooCommerce ou un serveur multi-sites, partez plutôt sur PHP-FPM. Si votre objectif est d’apprendre LAMP ou de créer un environnement local simple, ce guide suffit largement.
Installer phpMyAdmin ? Pas obligatoire
phpMyAdmin peut être pratique, mais il n’est pas obligatoire. Sur un serveur public, il ajoute aussi une surface d’attaque souvent ciblée par les bots.
Pour un environnement local, vous pouvez l’installer si vous préférez une interface graphique. Pour un serveur public, je préfère souvent administrer MySQL en ligne de commande ou via un accès temporaire mieux contrôlé.
Si vous l’installez, protégez-le correctement : URL non évidente, authentification forte, accès restreint par IP si possible, HTTPS obligatoire et mises à jour régulières.
Installer HTTPS avec Let’s Encrypt
Sur un serveur accessible publiquement avec un vrai nom de domaine, ajoutez HTTPS avec Let’s Encrypt. Pour Apache, l’outil le plus courant reste Certbot.
Installez Certbot et le plugin Apache :
sudo apt install certbot python3-certbot-apache
Demandez un certificat :
sudo certbot --apache -d example.com -d www.example.comCode language: CSS (css)
Testez le renouvellement automatique :
sudo certbot renew --dry-run
Remplacez example.com par votre domaine. Le domaine doit pointer vers le serveur avant la demande du certificat.
Droits de fichiers : éviter les mauvais réflexes
Ne mettez pas tout en 777. Jamais. Ce n’est pas une solution, c’est un abandon.
Pour un site simple dans /var/www/lamp-test, commencez avec :
sudo chown -R "$USER":www-data /var/www/lamp-test
find /var/www/lamp-test -type d -exec chmod 755 {} \;
find /var/www/lamp-test -type f -exec chmod 644 {} \;Code language: JavaScript (javascript)
Pour WordPress, certains dossiers doivent être inscriptibles par PHP, notamment wp-content/uploads. Mais ne donnez pas des permissions larges à tout le site sans comprendre pourquoi.
Logs utiles pour dépanner LAMP
Quand quelque chose casse, regardez les logs avant de modifier dix réglages au hasard. Apache parle. Il faut juste l’écouter avant de lui jeter un redémarrage dessus.
Logs Apache globaux :
sudo tail -f /var/log/apache2/error.logCode language: JavaScript (javascript)
Logs du VirtualHost créé plus haut :
sudo tail -f /var/log/apache2/lamp-test-error.log
sudo tail -f /var/log/apache2/lamp-test-access.logCode language: JavaScript (javascript)
Logs système du service Apache :
journalctl -u apache2 -n 100 --no-pager
Logs MySQL :
journalctl -u mysql -n 100 --no-pager
Pour MariaDB :
journalctl -u mariadb -n 100 --no-pager
Dépannage : Apache affiche la page par défaut au lieu de mon site
Vérifiez les VirtualHosts actifs :
sudo apache2ctl -S
Vérifiez que votre site est activé :
ls -l /etc/apache2/sites-enabled/
Si nécessaire, désactivez le site par défaut :
sudo a2dissite 000-default.conf
sudo systemctl reload apache2Code language: JavaScript (javascript)
Vérifiez aussi que le ServerName correspond bien au domaine appelé dans le navigateur.
Dépannage : PHP s’affiche en texte au lieu de s’exécuter
Si le navigateur affiche le code PHP, Apache n’exécute pas PHP. Vérifiez que le module PHP est installé :
dpkg -l | grep libapache2-mod-php
Réinstallez si besoin :
sudo apt install libapache2-mod-php
sudo systemctl restart apache2
Vérifiez aussi que votre fichier se termine bien en .php, et non en .html.
Dépannage : erreur 403 Forbidden
Une erreur 403 vient souvent d’un problème de permissions ou de directive Apache.
Vérifiez les permissions :
namei -l /var/www/lamp-test/public/index.phpCode language: PHP (php)
Vérifiez aussi le bloc <Directory> du VirtualHost :
<Directory /var/www/lamp-test/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>Code language: PHP (php)
Puis testez et rechargez Apache :
sudo apache2ctl configtest
sudo systemctl reload apache2
Dépannage : MySQL refuse la connexion PHP
Commencez par tester la connexion en ligne de commande :
mysql -u lamp_user -p lamp_test
Si cela échoue, le problème vient de l’utilisateur, du mot de passe, de l’hôte ou des droits MySQL.
Connectez-vous en administrateur :
sudo mysql
Vérifiez les droits :
SHOW GRANTS FOR 'lamp_user'@'localhost';Code language: JavaScript (javascript)
Si l’utilisateur n’existe pas ou n’a pas les droits, recréez-le proprement.
Dépannage : la réécriture d’URL ne fonctionne pas
Pour WordPress ou un framework PHP, les URLs propres dépendent souvent de mod_rewrite et de .htaccess.
Activez le module :
sudo a2enmod rewrite
Vérifiez que le VirtualHost autorise les fichiers .htaccess :
AllowOverride All
Rechargez Apache :
sudo systemctl reload apache2
Installation rapide en une commande
Pour un environnement local très simple, vous pouvez installer les paquets principaux en une seule commande :
sudo apt update
sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql
Ou avec MariaDB :
sudo apt update
sudo apt install apache2 mariadb-server php libapache2-mod-php php-mysql
C’est suffisant pour voir LAMP tourner rapidement. Pour un vrai projet, prenez le temps de créer un VirtualHost, une base dédiée, un utilisateur SQL dédié et une configuration propre.
LAMP pour WordPress : extensions PHP utiles
Pour WordPress, installez au minimum les extensions courantes :
sudo apt install php-curl php-gd php-imagick php-intl php-mbstring php-mysql php-xml php-zip
Selon les plugins, vous aurez parfois besoin d’autres extensions. WooCommerce, les constructeurs de pages, les plugins d’images et les intégrations API peuvent ajouter leurs propres besoins.
Pour un site WordPress public, pensez aussi à HTTPS, cache, sauvegardes, mises à jour automatiques contrôlées, permissions correctes et surveillance des logs. Installer LAMP n’est que la première brique. Le vrai sujet, c’est de le maintenir proprement.
Besoin d’un environnement WordPress ou WooCommerce fiable ?
Je peux vous aider à installer, auditer ou optimiser un environnement WordPress, WooCommerce ou serveur Linux : Apache, Nginx, PHP-FPM, MySQL/MariaDB, Redis, cache, SSL, sauvegardes, sécurité et performances.
L’objectif n’est pas seulement d’installer Apache et PHP. Il faut une stack stable, rapide, sécurisée et facile à maintenir. Surtout si le site génère du trafic ou du chiffre d’affaires.
- Installation serveur Ubuntu pour WordPress ou WooCommerce.
- Configuration Apache, Nginx ou PHP-FPM.
- Optimisation MySQL/MariaDB.
- HTTPS, sécurité, pare-feu et durcissement.
- Migration, sauvegarde et restauration.
- Diagnostic performance et Core Web Vitals.
Si vous voulez une stack propre pour héberger un site WordPress ou WooCommerce, contactez-moi. On peut faire mieux qu’un serveur “installé vite fait”.
Méthode recommandée aujourd’hui
Pour installer LAMP proprement sous Ubuntu, je recommande cette séquence :
- mettre Ubuntu à jour ;
- installer Apache ;
- autoriser Apache dans UFW ;
- installer MySQL ou MariaDB ;
- sécuriser le serveur de base de données ;
- installer PHP et les extensions nécessaires ;
- créer un VirtualHost ;
- tester PHP ;
- créer une base et un utilisateur SQL dédiés ;
- vérifier les logs et les permissions.
Cette méthode est plus longue qu’une commande magique, mais elle produit un environnement propre. Et un environnement propre, c’est moins de jurons plus tard.
Checklist rapide
- Installer
apache2. - Autoriser
Apache Fulldans UFW. - Installer
mysql-serveroumariadb-server. - Lancer
mysql_secure_installationoumariadb-secure-installation. - Installer
php,libapache2-mod-phpetphp-mysql. - Activer
mod_rewrite. - Créer un VirtualHost dans
/etc/apache2/sites-available/. - Tester la configuration avec
apache2ctl configtest. - Créer une base et un utilisateur SQL dédiés.
- Supprimer les fichiers de test comme
info.php.
À retenir
Installer Apache, PHP et MySQL sous Ubuntu reste simple, mais une stack LAMP propre ne se résume pas à installer trois paquets. Il faut aussi configurer le pare-feu, créer un VirtualHost, tester PHP, créer un utilisateur SQL dédié et surveiller les logs.
Pour un environnement local ou un serveur de test, Apache avec libapache2-mod-php reste rapide et pratique. Pour un serveur de production, surtout avec WordPress ou WooCommerce, PHP-FPM, HTTPS, cache, sauvegardes et supervision deviennent rapidement indispensables.
La bonne méthode : installer simple, configurer propre, tester immédiatement. Le serveur web vous remerciera. Pas verbalement, bien sûr. Mais par une absence délicieuse d’erreurs 500.
FAQ : installer Apache, PHP et MySQL sous Ubuntu
Quelle commande installe un serveur LAMP sous Ubuntu ?
La commande minimale est sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql. Pour un vrai projet, ajoutez un VirtualHost, une base dédiée et les extensions PHP nécessaires.
Faut-il choisir MySQL ou MariaDB ?
Les deux conviennent pour beaucoup d’applications PHP. Choisissez MySQL si votre application ou votre hébergeur le demande explicitement. Choisissez MariaDB si vous préférez cette alternative, très courante sur Linux.
Pourquoi PHP ne s’exécute pas dans Apache ?
Le module PHP Apache manque peut-être. Installez libapache2-mod-php, redémarrez Apache et vérifiez que le fichier se termine bien par .php.
Dois-je installer phpMyAdmin ?
Pas forcément. phpMyAdmin est pratique en local, mais pas indispensable. Sur un serveur public, il faut le protéger soigneusement ou préférer la ligne de commande.
PHP-FPM est-il meilleur que libapache2-mod-php ?
Pour une stack simple, libapache2-mod-php suffit. Pour une production multi-sites, PHP-FPM est souvent préférable grâce à ses pools, sa séparation des processus et sa flexibilité.
Où placer les fichiers du site ?
Évitez de travailler directement dans /var/www/html. Créez plutôt un dossier dédié, par exemple /var/www/mon-site/public, puis configurez un VirtualHost Apache.
Articles liés
- Installer PHP-FPM sur un serveur dédié
- Installer PHP 8.5 sur Ubuntu Server
- Activer un VirtualHost Apache sur un serveur dédié
- Analyser les performances CPU, RAM, disque et réseau sous Linux
- WordPress : vérifier la compatibilité PHP 8
- Réinitialiser le mot de passe root MySQL/MariaDB sous Debian
Sources
- Apache HTTP Server Documentation 2.4
- PHP — Supported Versions
- MariaDB — Documentation
- MySQL — Documentation
Votre hébergement est devenu un problème ?
Serveur partagé saturé, limites PHP trop basses, support qui répond en 48h — à un certain niveau de trafic, l'hébergement mutualisé devient le goulot. Je migre et configure des serveurs dédiés.
Parlons de votre infrastructure →

Merci Matt !
j’ai pas compris le
dans :
mais à part ça, excellent easy tutoriel.
Et avec tous les windowsiens qui te lisent, tu risques toi aussi de faire basculer des voix !
Tu aurais pu (mais tu le sais certainement) faire comme ça :
Pour installer lamp, il y a plus simple dans synaptic
Tu fais Édition-> Sélectionner des paquets par tâches
Cocher l’option “serveur LAMP” et valider. (c’est un commentateur sur mon blog qui m’a donné la manip à suivre).
J’ai déjà installé tout ça, je vais utilser ton bilet pour tout configurer. L’histoire des liens symbolique, ça va m’aider je sens, j’avais toujours des problèmes de droits sur les dossiers. Je faisais beaucoup usage du chmod …
Bonjour,
La ligne de commande suivante peut aider:
sudo nautilus
Cela ouvre le navigateur de fichiers en root tu peut modifier n’importe quel fichier ou dossier sans être ennuyé plus que ça.
@olmon : en fait, le
me permet de revenir à la racine pour lancer la commande suivante. C’est une habitude de windowsien je crois… Donc oui, on peut sûrement l’omettre.
@agatzebluz : ah oui tiens, cela a l’air beaucoup plus simple ! Le lien symbolique me facilite beaucoup la tâche je trouve.
Bonjour!
C’est sympa, mais
Ta commande ne fonctionne pas:
sudo etc/init.d/apache2 restart
réponse: sudo: etc/init.d/apache2: command not found
cd /etc/init.d
sudo apache2
—->apache2: bad user name ${APACHE_RUN_USER}
Cordialement
P.Broto
Bonjour Broto,
Il ne faut pas oublier le premier slash avant etc :
Cela fonctionne bien chez moi :
@agatzebluz :
Bonjour!
Ceci ne fonctionne pas chez moi (Ubuntu 8.04)
Selection—> LAMP : le bouton valider est en grisé et donc inactif!
Cordialement
P.Broto
J’ai oublié de préciser que j’ai écrit le tutoriel sous Ubuntu 9.0.4.
@Broto : tu as essayé avec le slash ?
Ce n’est pas gênant comme message mais si tu veux le supprimer, il suffit d’ajouter le nom du serveur dans la configuration Apache – comme ceci :
1- dans le terminal :
2- après la ligne ServerRoot, ajouter :
3- sauvegarder le fichier et recharger la configuration Apache :
Et voilà ! :)
débutant en ce domaine j’ai suivi mot à mot la procédure afin d’installer apache… je voulais maintenant savoir comment procéder pour maintenant creer le serveur
merci beaucoup
je me suis surement mal exprimé je voulais savoir où faire des modifications et où aller pour voir ces changements, a quelle adresse url ?
merci
Salut,
@martin florent : par défaut, le serveur sera visible sur localhost.
Pour éditer la configuration Apache depuis le terminal :
d’accord merci, juste une dernière petit question… :/ connais tu un site où il explique comment mettre en ligne des fichiers tout ca grace à ce logiciel. j’aimerais vraiment savoir faire et je n’ai pas trop de connaissances à ce sujet. après je pourrais donc apprendre
merci beaucoup et j trouve ca super ton explication pour l’installation et la configg
Salut,
@martin florent : tout dépend de ton serveur. S’il est hébergé sur ta propre machine, tu peux mettre les fichiers dans un répertoire comme indiqué dans le tutoriel (fin de l’étape configuration Apache). Si ton serveur est distant (hébergé sur un autre ordinateur que le tien), tu auras besoin d’un client FTP pour y déposer les fichiers (on présuppose qu’il y a un serveur FTP installé sur le serveur).
Je t’en prie, je suis content que cela puisse aider.
Salut,
Désolé, je suis un débutant à la matière, mais j’ai suivi à la lettre le tuto que Matt nous avait fait, chapeau bas pour lui, et ça marche à merveille, mais mon problème est le suivant:
j’ai l’habitude de travailler sous windows en utilisant wamp (lamp en linux), cette fois j’ai migré mes bd de mysql sous windows vers mysql sous ubuntu: ok, même topo pour l’application php que j’ai mis dans /home/masite/appliphp/ et le lien de /var/www est fait.
Quand je lance localhost, je vois info.php et le répertoire appliphp, et si je click sur appliphp rien ne marche alors que dans appliphp le fichier index.php existe (avant sous windows ok).
Voila mon problème si personne pourrait m’aider, merci beaucoup.
Salut,
Quand tu écris :
tu veux dire que tu obtiens une page blanche? Si ton fichier index.php fait référence à d’autres fichiers (include etc), vérifie que les chemins sont corrects. Regarde aussi dans les logs d’erreur Apache, ils permettent souvent de trouver le problème.
Sous Ubuntu 10.10 j’avais phpmyadmin qui n’apparait pas. J’ai trouvé la solution ici LINK
Merci pour l’astuce Agat’ ! Je réessaierai d’installer ça sur le nouveau serveur (migration en cours).
Bon je continue mes expériences. Mais pour le lien sympbolique je ne comprends pas …
Commencez par créer votre répertoire. Pour l’exemple, je crée le répertoire /www dans /home/matt –> c’est fait en adaptant avec mon user
Ensuite, il suffit de lancer cette commande. Cela crée un répertoire /skyminds à la racine du serveur qui pointe vers /home/matt/www –> Voilà ce que je tape sachant que mon dossier d’installation de WP s’appelle wordpress
sudo ln -s /home/guillaume/www wordpress
Et la réponse du f****ng terminal : ln: création d’un lien symbolique «wordpress/www»: Le fichier existe
Je sèche …
Wow, je réalise que j’ai écrit cela y’a un bout de temps… As-tu essayé de supprimer le lien puis de le recréer ?
Ps : il faut se trouver dans le répertoire dans lequel on veut créer le lien avant de lancer la commande.
Je suis arrivé à en faire un mais par contre, je suis quand même obligé de me connecter en superutilisateur pour faire quoi que ce soit dans le dossier. Donc ma question est : quel est l’intérêt de faire ce lien ?
Quand je tapais , j’avais toute une liste répertoires (des liens symboliques en fait) qui pointaient vers les répertoires réels.
J’ai changé de méthode depuis et j’utilise les VirtualHosts d’Apache comme dans lee tuto créer et activer un Virtual Host sous Apache.
je tenais à remercier Matt d’avoir créer cette page car sans ça je serais sans doute encore en train de galérer !!
j’arrivais à me connecter à mysql via la console mais je n’arrivais pas à me connecter avec ‘mysql_connect’ dans mes script ; pourtant j’avais bien décommenté la ligne ‘extension = mysql.so‘ dans le fichier php.ini et tout et tout mais rien à faire ! Et la solution était dans les 1ères ligne de cette page : dans la doc ils disent d’installer lamp avec la ligne de commande suivante : sudo apt-get install apache2 php5 mysql-server
or c’est en installant en plus les paquets : libapache2-mod-php5 php5-mysql que ça a fonctionné ! Alléluhia !
Quand même ils pourrait le préciser dans la doc ubuntu, je galère depuis hier!!!
Enfin bref merci encore !!
Voui mais tu peux participer à la doc sur ubuntu-fr.org, c’est un wiki.
Et la communauté te remerciera !
Cheers.
Content que cela fonctionne, il suffit d’une ou deux librairies manquantes pour tout bloquer.
vraiment très très bon tuto… merci merci
Sinon pour redémarrer apache sous ubuntu et autre platforme tu fais :
service apache2 restart
sur ubuntu 12.04, j’ai dû remplacer
par
Mais sinon, tout impecc ! Merci à l’auteur du tuto