Comment déplacer mon site du sous-dossier vers la racine?

12

J'ai un site joomla et il est installé dans un sous-dossier de mon compte d'hébergement.

Alors maintenant, si je veux accéder à mon site, je dois taper www.mysite.com/joomla . Je souhaite pouvoir accéder directement à la page d'accueil de mon site avec mon domaine www.site.com .

Comment faire ça?

FFrewin
la source

Réponses:

14

Voici les étapes nécessaires pour déplacer un site joomla du sous-dossier vers la racine:

  1. Utilisez un client FTP et connectez-vous à votre compte d'hébergement via FTP, ou utilisez le gestionnaire de fichiers qui devrait être disponible dans le panneau de configuration de votre compte d'hébergement.
  2. Accédez au dossier où réside Joomla (root / joomla).
  3. Localisez le fichier configuration.php, téléchargez-le et ouvrez-le avec un éditeur de texte (pas un logiciel de traitement de texte comme ms word).
  4. Vous recherchez les lignes suivantes:

    var $live_site = '';
    var $log_path = '/home/username/public_html/joomla/logs';
    var $tmp_path = '/home/username/public_html/joomla/tmp';
    var $ftp_root = 'public_html/joomla';
    

    Changer pour:

    var $live_site = '';
    var $log_path = '/home/username/public_html/logs';
    var $tmp_path = '/home/username/public_html/tmp';
    var $ftp_root = 'public_html';
    

Si la $live_sitevariable avait une valeur:
par exemple$live_site = 'http://www.site.com/joomla';

puis ajustez comme:
$live_site = 'http://www.site.com';

  1. Enregistrez configuration.php et téléchargez-le à son emplacement précédent.
  2. Recherchez un fichier nommé .htaccess. S'il est disponible, modifiez-le également. Vous recherchez la ligne suivante:

    RewriteBase /joomla Changer pour: RewriteBase /

* au lieu de joomla, attendez-vous à voir le nom de votre sous-dossier actuel, où réside joomla.

  1. Revenez à votre dossier racine. S'il existe des fichiers et des dossiers d'un ancien site, il est préférable de créer un nouveau dossier, de le nommer quelque chose comme "ancien site" et de mettre tous ses fichiers dans ce dossier.
  2. Il ne vous reste plus qu'à déplacer les fichiers / dossiers de l'installation de Joomla vers le dossier racine.
  3. Une fois le déplacement terminé, connectez-vous à l'administrateur et nettoyez le cache de Joomla. Allez dans Système -> Vider le cache et nettoyez les fichiers mis en cache.
  4. Vérifiez le front-end de votre site.
  5. Si tout fonctionne bien, n'oubliez pas de supprimer les fichiers de l'ancien site si vous n'en avez plus besoin.
FFrewin
la source
5

Juste un peu plus ici. La plupart des gens n'auront pas besoin de le faire car ils ne touchent jamais le fichier robots.txt , cependant si vous avez quelque chose comme ceci:

User-agent: *
Disallow: /joomla/administrator/
Disallow: /joomla/bin/
Disallow: /joomla/cache/
Disallow: /joomla/cli/
Disallow: /joomla/components/
Disallow: /joomla/includes/
Disallow: /joomla/installation/
Disallow: /joomla/language/
Disallow: /joomla/layouts/
Disallow: /joomla/libraries/
Disallow: /joomla/logs/
Disallow: /joomla/modules/
Disallow: /joomla/plugins/
Disallow: /joomla/tmp/

Ensuite, vous devez supprimer le /joomlapréfixe au début de chaque chemin.

Lodder
la source
5

Si vous avez un accès shell à votre hôte, il est également judicieux de stocker l'installation Joomla en dehors de la racine Web et de la créer un lien symbolique. De cette façon, vous pouvez contrôler la source de l'installation ou basculer facilement entre plusieurs versions de production / production.

Son utilisation avec des sous-domaines facilite également le processus de test des nouvelles versions.

Jeremy Proffitt
la source
Pourriez-vous nous en dire plus à ce sujet? Peut-être un nouveau poste de questions et réponses sur la façon d'y parvenir, il pourrait être intéressant pour de nombreux utilisateurs.
johanpw
SE ne semblait pas aimer mes titres potentiels pour la question, donc je vais devoir y travailler, mais j'ai développé ce processus dans une autre réponse ici: joomla.stackexchange.com/q/4145/58
Jeremy Proffitt
3

Le mieux serait de changer le dossier racine attribué à votre site sur vos paramètres d'hébergement Web . Je le fais pour pouvoir créer de nouvelles versions de mon site et sauvegarder / garder les anciennes versions en vie; tout ce que je dois faire est de changer la "racine du document" de mon domaine dans le nouveau dossier chaque fois que je publie une nouvelle version. Évitez de rediriger votre site, l'algorithme de recherche de Google ne l'aime pas.

mauweb.net
la source
2

Je me demande pourquoi personne n'a suggéré d'utiliser le composant de sauvegarde Akeeba et le script Akeeba Kickstart . Pour certains utilisateurs, il pourrait être plus facile de faire la même chose que FFrewin a suggéré. Akeeba fait tout cela automatiquement.

Les deux sont gratuits (en version de base, vous n'avez pas besoin de pro). Vous pouvez les télécharger directement sur AkeebaBackup.com/download .

Les étapes requises sont les suivantes:

  1. Installer Akeeba Backup
  2. Configurez Akeeba Backup, il y a une configuration automatique en un clic juste après avoir ouvert le composant dans votre administration Joomla
  3. Sauvegardez votre site via Akeeba Backup
  4. Téléchargez votre sauvegarde (fichier .jpa)
  5. Téléchargez votre sauvegarde vers le nouvel emplacement sur votre FTP (peu importe s'il s'agit d'un hôte différent ou simplement d'un dossier différent, vous pouvez déplacer votre site n'importe où, même localhost)
  6. Décompressez Akeeba Kickstart et téléchargez le fichier kickstart.php au même endroit où vous avez téléchargé le fichier .jpa
  7. Dans votre navigateur, dirigez-vous vers http: //newlocation.xy/kickstart.php
  8. Akeeba Kickstart ouvrira, choisissez la méthode directe
  9. Passez à l'ensemble du processus et remplissez les champs obligatoires (tout comme une nouvelle installation Joomla)
    • Paramètres de connexion à la base de données (serveur, nom, mot de passe) - si vous souhaitez conserver la même base de données que vous avez déjà, utilisez un préfixe de table différent
    • Paramètres du site Web - définissez une nouvelle URL en direct, y compris http: //, c'est le plus important. De plus, vous pouvez également modifier le mot de passe superadmin et configurer de nouveaux comptes FTP)
    • Lorsque tout est terminé, cliquez sur "supprimer le dossier d'installation"
  10. Voilà, si le nouveau site fonctionne, vous pouvez supprimer votre site à l'emplacement précédent et les anciennes tables de base de données (elles devraient avoir un préfixe différent ou être dans une base de données distincte).

Avant de supprimer votre installation précédente, assurez-vous que votre nouvelle fonctionne vraiment. Votre fichier de sauvegarde peut être corrompu lors du téléchargement ou autre et vous ne pourrez peut-être pas installer la sauvegarde.

Je suis également conscient que cela semble un peu plus compliqué, mais ce n'est pas le cas, je pense que c'est plus facile et généralement plus rapide - copier des milliers de fichiers (Joomla entier) de votre emplacement FTP vers votre ordinateur et les télécharger vers votre nouvel emplacement FTP prend des heures. Avec Akeeba, vous pouvez être opérationnel en moins d'une heure (selon la taille de votre site Web Joomla).

TeeJay
la source
Personne n'a suggéré Akeeba, car la question est de déplacer l'installation d'un sous-répertoire à la racine du même hébergement.
FFrewin
Pourtant, vous pouvez utiliser Akeeba pour cela. C'est juste une option différente.
TeeJay
1
Bien sûr, c'est une option, mais ce que vous décrivez dans votre réponse, c'est comme aller de Paris à Londres en passant par Tokyo. Toute cette procédure est tout simplement inutile. Vous avez mentionné que vous pouvez être opérationnel en moins d'une heure, alors que la procédure réelle devrait durer quelques minutes et qu'il n'est pas nécessaire de jouer avec la base de données.
FFrewin
En fait, je préfère utiliser Akeeba pour des situations comme celle-ci, car le script d'installation d'Akeeba est spécifiquement écrit pour ajuster des choses comme tmp et les chemins de cache et ainsi de suite dans la configuration, et vous avez l'avantage supplémentaire d'une sauvegarde complète. Une heure est un processus beaucoup plus long qu'il n'en faut réellement si vous utilisez le gestionnaire de fichiers Cpanel pour déplacer les fichiers sur le serveur lui-même. Vous effectuez une sauvegarde qui prend un peu moins de 2 minutes pour la plupart des sites. Le déplacement de fichier est de 30 secondes, déployez à la racine environ une minute ou 2. Et aucune vérification des chemins de fichiers individuels à corriger.
Toni Marie
C'est une solution possible, mais je pense que Akeeba Backup est exagéré pour un processus facile qui ne nécessite aucune extension. Utiliser Akeeba signifie que vous devez créer une sauvegarde, la télécharger, configurer kickstart et réinstaller Joomla (pour ainsi dire). plutôt un long processus lorsque vous pouvez simplement déplacer un dossier à l'aide de votre gestionnaire de fichiers d'hébergement et modifier quelques lignes dans la configuration
Lodder
2

Si vous souhaitez rediriger votre hôte local vers un sous-dossier au lieu d'un dossier racine comme

/var/www/subfolder

Ensuite, vous devez effectuer cette configuration sur le serveur. ouvrez le fichier au chemin suivant:

/etc/apache2/sites-enabled/000-default.conf

alors vous devez changer le chemin racine du dossier comme suit:

ServerAdmin webmaster@localhost
DocumentRoot /var/www/subfolder

Maintenant, si vous exécutez l'hôte local, il ouvrira le fichier du sous-dossier.

Er. Mohit Agrawal
la source
Cette réponse semble être utile pour les utilisateurs Linux avec un serveur Apache sur des distributions spécifiques comme Ubuntu. De plus, si la racine n'a que le sous-dossier, il est préférable de déplacer le sous-dossier vers la racine.
Farahmand
0

Akeeba Backup fonctionne bien. Si vous avez un site joomla précédent déjà installé dans votre racine, assurez-vous de supprimer les dossiers joomla à la racine avant de déplacer le nouveau site vers la racine ou vous risquez de laisser des modèles incompatibles, etc. à partir de cette version précédente.

Je recommanderais également d'aller dans votre administrateur cpanel-> myPHP et d'exporter votre base de données pour une autre couche de sauvegarde. Le fichier de sauvegarde Akeeba comprend votre base de données, il ne s'agit donc que d'une redondance.

D Cincy
la source