Volete spostare un sito WordPress dal sottodominio al dominio principale?
Il processo è abbastanza semplice da seguire e c’è anche un modo per salvare le classifiche SEO.
In questo articolo vi mostreremo come spostare facilmente WordPress da un sottodominio a un dominio principale con istruzioni passo dopo passo.
Trasferimento di WordPress da un sottodominio al dominio principale
Un sottodominio è un’estensione del nome di dominio principale. Ad esempio, http://yourwebsite.example.com è un sottodominio di example.com. In questo caso, example.com è il dominio principale.
I motori di ricerca considerano il sottodominio come un sito web completamente diverso. Per questo motivo è necessario assicurarsi di reindirizzare correttamente i motori di ricerca al dominio principale dopo il trasferimento. Questo vi aiuterà a preservare le classifiche di ricerca dopo lo spostamento del vostro sito web.
A differenza dello spostamento di un sito WordPress su un nuovo host o su un nuovo nome di dominio, lo spostamento di un sito sul dominio principale è un po’ più semplice.
In primo luogo perché entrambi sono solitamente ospitati dalla stessa società di web hosting. Ciò consente di saltare alcuni passaggi.
Vediamo come spostare un sito WordPress dal sottodominio al dominio principale.
Passo 1. Creare un backup completo del sito web
Dovreste sempre tenere una soluzione di backup installata sul vostro sito web per eseguire backup automatici. Ci sono molti plugin di backup per WordPress che potete utilizzare per mantenere al sicuro i vostri contenuti WordPress.
Se avete già installato un plugin di backup, potreste pensare di saltare questo passaggio.
Questo passaggio serve a ricordarvi che, anche se disponete di backup automatici del vostro sito web, dovete comunque creare un backup completo del vostro sito. Questo include un backup del database e un backup di tutti i file e le cartelle di WordPress.
Una volta creato un backup completo, assicuratevi di archiviarlo in una posizione remota o sul vostro computer.
Passo 2. Spostamento dei file di WordPress dal sottodominio alla cartella principale
Per prima cosa, dovete collegarvi al vostro sito web utilizzando un client FTP o il file manager di cPanel. Una volta collegati, andate alla posizione della vostra sottocartella e scaricate tutti i file di WordPress sul vostro computer.
Quindi, aprite la cartella public_html del vostro dominio principale. A seconda di come è impostato il vostro ambiente di hosting WordPress, questa cartella potrebbe anche essere denominata www o con il nome del vostro dominio.
Ora è necessario caricare tutti i file di WordPress scaricati in precedenza nella directory principale.
Passo 3. Modificare le impostazioni dell’URL di WordPress e dell’URL del sito
Una volta spostati i file di WordPress, non sarà possibile accedere all’area di amministrazione di WordPress sul dominio principale. Se si cerca di accedere al sito web principale, si viene rimandati all’area di amministrazione del sito web del sottodominio.
Per risolvere il problema, passare al client FTP e andare alla directory principale del proprio nome di dominio. Quindi, è necessario modificare il file wp-config.php e aggiungere le seguenti righe subito prima della riga “Questo è tutto, smettete di modificare! Buon blog”.
define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');
Non dimenticate di sostituire example.com con il vostro nome di dominio. Se si desidera che il sito web principale utilizzi www, è necessario inserire gli URL con il prefisso www.
Salvate le modifiche e caricate il file wp-config.php sul vostro sito web.
Ora è possibile visitare l’area di amministrazione del sito WordPress sul nome di dominio principale.
Passo 4. Aggiornare gli URL
Il vostro sito WordPress si è spostato sul dominio principale, ma all’interno del vostro database WordPress ci saranno dei link che puntano al sottodominio.
Risolviamo questo problema.
È necessario installare e attivare il plugin Search & Replace Everything. Per maggiori dettagli, consultate la nostra guida passo passo su come installare un plugin di WordPress.
Dopo l’attivazione, è necessario visitare la pagina Strumenti ” WP Search & Replace dal pannello di amministrazione di WordPress.
In alto nella pagina, è necessario inserire l’URL del sottodominio accanto al campo “Cerca” e aggiungere il dominio principale nel campo “Sostituisci con”.
Scorrendo la pagina verso il basso, si può scegliere di aggiornare gli URL in tabelle specifiche all’interno del database di WordPress, come quelle relative a pubblicazioni, commenti, opzioni, dati utente, termini e altre aree. Oppure, potete selezionare tutte le tabelle.
Quindi, premere il pulsante “Anteprima di ricerca e sostituzione”.
Il plugin mostrerà quindi un’anteprima di tutte le modifiche che apporterà.
Se tutto sembra a posto, fare clic sul pulsante “Sostituisci tutto” per continuare.
Il plugin aggiornerà ora tutti gli URL nel database di WordPress.
Passo 5. Reindirizzare tutto il traffico del sottodominio al dominio principale
Ora che avete spostato i file di WordPress, assicuratevi che il traffico del sottodominio sia reindirizzato al nome di dominio principale.
Andare nella cartella del sottodominio e assicurarsi che i file nascosti siano visibili.
Le impostazioni del client FTP hanno un’opzione per mostrare sempre i file nascosti. In FileZilla, si trova sotto l’opzione Server ” Forza la visualizzazione dei file nascosti.
Se si utilizza il File Manager di cPanel, fare clic sul pulsante “Impostazioni” nell’angolo superiore destro dello schermo. Verrà visualizzata la finestra delle preferenze. È necessario selezionare “Mostra file nascosti” e quindi fare clic sul pulsante “Salva”.
Se nella cartella del sottodominio è già presente un file .htaccess, è possibile eliminarlo e crearne uno nuovo. All’interno del nuovo file .htaccess, è necessario copiare e incollare il seguente codice:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^yoursubdomain\.example\.com$ [NC]
RewriteRule ^(.*)$ "http://example.com/$1" [R=301,L]
</IfModule>
Non dimenticate di sostituire il sottodominio con il sottodominio effettivo e example.com con il nome del vostro dominio.
Si noti che la riga RewriteRule usa un URL non www. Se si desidera utilizzare il www nel dominio principale, è necessario aggiungere l’URL con un prefisso www.
Salvare le modifiche e caricare il file .htaccess sul server.
Questo è tutto. Avete spostato con successo il vostro sito dal sottodominio al dominio principale. Ora potete visitare il vostro sito web per vederlo in azione. Testate il vostro sito per assicurarvi che tutto funzioni bene.
Speriamo che questo articolo vi abbia aiutato a spostare il vostro sito dal sottodominio al dominio principale. Potreste anche voler consultare la nostra guida definitiva alla SEO di WordPress per i principianti e la nostra selezione dei migliori plugin di reindirizzamento 404 per WordPress.
Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.
Anna
I’m moving from a subdomain to a new domain – can I follow this guide to do this?
jpettett
If it’s on the same server, than most likely yes. Some of the details may depend on how your hosting is set up and if the different files for each domain are all under the same account.
If the account doesn’t offer a way to move the files directly, you may want to check out this guide: https://www.wpbeginner.com/wp-tutorials/how-to-properly-move-wordpress-to-a-new-domain-without-losing-seo/
Heidary
hello and thank you for this article
i moved a website from subdomain to domain but the problem that i have is when i enter the subdomain url in the browser the website is being displayed but the url that is being displayed in the address bar is the subdomain , and when i click one of the links on the website then i am being redirected to main domain , please note there is nothing on the subdomain right now.
i do have 301 redirect on the subdomain but something doesn’t seem to be working properly , any idea what could be causing this? any help or tip would be appreciated
thank you in advance
WPBeginner Support
If you’ve already done the step to update your URLs, we would recommend checking your Settings>general page to ensure the URL was updated correctly there.
Admin
Jesse Dill
I am going through the steps and on step 3, I followed the php syntax but it caused some errors and I couldn’t get to any of the wordpress admin sites. I had to remove the pre tags and just use:
define(‘WP_HOME’,’http://example.com’);
define(‘WP_SITEURL’,’http://example.com’);
After that it worked. Just in case anyone comes across the same issue as me.
WPBeginner Support
Thank you for sharing that in case someone else runs into that issue!
Admin
Valeri Andreev
Thank you so much
sarah
Hi, Step two doesn’t seem to work for me as CPanel won’t let me download the directory sub.example.com
I can download individual files but not folders or directories. I have tried compressing to .zip but the .zip file is empty.
Can you please advise? Many thanks
WPBeginner Support
You may need to check with your hosting provider to ensure they do not have something on their end that is limiting the download from the cPanel side. To get around that, we would recommend using an FTP program that would not run into that issue. You can see our guide on FTP programs here:
https://www.wpbeginner.com/beginners-guide/how-to-use-ftp-to-upload-files-to-wordpress-for-beginners/
Admin
Jessica
I see that Velvet Blues Update URLs plugin on wordpress.org is noted “This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.”
Do you recommend a different plugin now or to still use this one?
Caleb Byers
Do you need to update anything in the databases after doing the steps in the article? Whenever moving a site I’ve seen people say that there are a few steps in the databases, but not in this article… Is there a reason why?
Thanks.
WPBeginner Support
Step 4 handles that
Admin
Del Abernethy
Worked a charm up until I tried to login to wp-admin. The site already had files (which I over-wrote) and users but now it won’t recognise the existing users. It does allow me to login using the username & password from the sub-domain so I’m assuming it is linked to the sub-domain database. Is it possible to link it to the existing original database?
WPBeginner Support
You would want to check the wp-config file for the database it is connected to for your site and you would be able to change that in your file. That would normally happen if you didn’t overwrite the existing file if you were trying to replace a site with the one on the subdomain.
Admin
Peter Harrison
Does this method update all the references in the database too?
Regards
Pete
WPBeginner Support
It would depend on what references you are talking about. If you mean links in the articles then the velvet blues plugin updates those.
Admin
Mucha
please advise on the steps for the htaccess. if my subdomain is /new what should it be on the new htaccess?
WPBeginner Support
You would want to take a look at step 5 in the article for that information.
Admin
Kat
I get a Web Application Firewall error whenever I implement phase 4. What could be the problem?
WPBeginner Support
You would likely want to check with your hosting provider to ensure they don’t have a firewall and your SSL certificate is active as the most common reasons
Admin
Ben
Hey – do you reccomend also using Googles change of address tool, to tell it subdomain.primarydomain.com is now primarydomain.com ?
thanks
WPBeginner Support
If you want you can also use that tool, the redirects would normally resolve this for you.
Admin
Sunita
Thanku so much… it wouldn’t be possible without your help… thank you again!
WPBeginner Support
You’re welcome
Admin
Sara
Hi,
I followed your steps up until the end of step 3, where I have edited the wp-config.php file
I then go to the wp-admin. I enter my details and it just goes back to the same login. It’s not allowing me to login to the wordpress backend.
It’s like it’s redirecting me.
Are you able to help?
I’d really appreciate it.
Thanks,
Sara
WPBeginner Support
There are a few reasons for that, you may want to take a look at our guide below for some possible solutions:
https://www.wpbeginner.com/wp-tutorials/how-to-fix-wordpress-login-page-refreshing-and-redirecting-issue/
Admin
Ghassen GaraAli
Hello,
Does this work to move a subdirectory to root ?
thank you
WPBeginner Support
Yes, you can follow our guide for that as well.
Admin
Sofia
Hello, I did everything and it worked! But now I’m wondering, how do I keep my subdomain as a “staging” website, so that I can change things and not affect the one on the domain. I’d have to make a new database (using a backup) right?
How to assure I don’t do anything wrong?
WPBeginner Support
For setting up a staging site, you would want to take a look at our guide using the link below:
https://www.wpbeginner.com/wp-tutorials/how-to-create-staging-environment-for-a-wordpress-site/
Admin
Oliver
In my subdomain folder, I have 2 .htaccess files. One is in subdomains/example, the other is in subdomains/example/web. The latter is next to all the other wordpress files. Which one should I delete and replace with the code in step 5?
WPBeginner Support
You may need to check with your host but from the sound of it, you would modify the second one.
Admin
Aldo Salim
Hi, thank you so much for the great help.
However, i do not want to keep the old sub-directory folder. Will it be okay to delete the sub-directory folder?
WPBeginner Support
As long as you’ve moved all of the files you can remove the sub-directory folder
Admin
Joshua Orizu
I am building a websites and the domain name is displaying site.comp50 instead of site.com how do i fix this
WPBeginner Support
You may want to check with your hosting provider to ensure the correct domain is attached to where your site is and then you would be able to update the url in your Settings>General area
Admin
Jeremy
What happens to the blog posts on the root domain during a migration?
I currently built a redesigned site on a subdomain, Sandbox.WebsiteName.com, and want to migrate it over to the the root domain. However, I want to keep the blog posts.
i’m worried about the seo. Do the blog post from the root domain get overwritten? If not how would i access them to redirect them?
Thanks,
WPBeginner Support
This method would overwrite the old content on your primary site, for moving the site you could use one of the methods here: https://www.wpbeginner.com/wp-tutorials/how-to-create-staging-environment-for-a-wordpress-site/
or you could import the content from your live site and then follow the steps in this article
Admin
Madison
Hi,
Would this method work if I wanted to move a subdomain, which a friend uses, ie, xxx.example.com, over to their new account so it can be its own website like xxx.com?
If not, is there anything that would work at all or would they just have to start over, thus losing all the comments, page views, etc?
WPBeginner Support
For that type of change, you would want to take a look at our article here: https://www.wpbeginner.com/wp-tutorials/how-to-properly-move-wordpress-to-a-new-domain-without-losing-seo/
Admin
Madison
Thanks! From what it looks like, all I need to do is not use Duplicator on my root domain but on my subdomain and everything should work the same, right?
WPBeginner Support
That should be correct
jeff
velvet blues didn’t work for me, but another url replacement plugin did (better search replace)
WPBeginner Support
Thanks for sharing the plugin that worked for you
Admin
Rui
Hi,
This tutorial is great, but didn’t work for me. I don’t know why.
I can access to admin area, in homepage the images are not shown and when i tried to access posts and products says “Not Found
The requested URL /shop/index.php was not found on this server.”
I would like some help if possible.
Thank you a lot
WPBeginner Support
You may want to ensure steps 3 and 4 were completed for the most common reason for that.
Admin
Canonical Bear
Hi,
We had the same problem (my team and I). Only the Home Page would open, and all other pages were broken.
You need to update the permalinks. Go to Dashboard ->Settings -> Permalinks. Here, don’t make any changes, just click on “Save Changes”.
It re-apply settings with the current directory as root.
All the best.
John
CANONICAL BEAR, you deserve two kisses for this comment. No, make that three! Worked superbly.
Milan
Hello WP Team,
just one quick question… what is the difference between this procedure and clone website from cpanel installatron (godaddy). Can I use clone for same purpose? Do I need to made some additional changes after cloning. It’s looks much easier to do this with clone option.
Thanks for good work!
Melind
This worked like a charm! The part that takes the longest is uploading and downloading the files. Thank you!
smv
This didn’t work for me at all. Step 4, using the Velvet Blues plug-in to update the URLs, didn’t update most of them. There were still loads of references to the old site. I had to re-do everything, but I used the duplicator plug-in, which worked well.
Gábor Sztárcsevics
Hi!
Is this modification will change the records in the database, which is used for my wordpress on the subdomain.example.com?
Shouldn’t I create a new database for the migrated wordpress?
Thank you!
WPBeginner Support
Hi Gábor Sztárcsevics,
Since you are moving from subdomain to root domain on the same hosting environment, your old database would work just fine after you update URLs as shown in the tutorial.
However, if you would like to create a new database, then you can do that as well. You will then need to export your data from the old database to the new one and update URLs.
Admin
Shravan
RewriteCond %{HTTP_HOST} ^yoursubdomain\.example\.com$
in this code, do i need to remove those 2 backward slash’s
Denise
I don’t see where you remove the old wordpress files. Are they automatically replaced when you upload the subdomain files to the root?
Thank you.
WPBeginner Support
Hi Denise,
IF your root site already has a WordPress installation, then you need to overwrite those files.
Admin
Charlotte Jones
I tried this and got a HTTP 500 error. Luckily I backed everything up, but I don’t understand. All the files are there in public_html and I changed the wp-config file to point to the root domain.
Jon
Very good thank you. Went like a dream apart from an error I made by amending the old subdomain .htaccess file instead of the new one in the root. Your advice was excellent tho.
Juan F.
Hi guys,
After doing all the steps, if I want to save a page I get an error and automatically redirects me to the post list, could you help me please?
Thanks in advance.
Anita
Hello!
If I make the site in the exemple.com/Wordpress folder, do I have to move it to the example.com folder or can I just redirect it, how does that work?
/Anita
Ousman Faal
This was definitely useful. I was just about to change a demo site on a sub domain to a root domain.
You guys are live savers.
Kumaar Dev Sharma
this is very helpful to me….very nice post