Usare un proxy inverso per installare un blog WordPress per migliorare il SEO

Proxy, SEO, Oct-25-20215 minuti di lettura

Vi siete mai trovati nella situazione di dover creare un blog sul vostro sito web aziendale esistente che non funziona con WordPress? Sono sicuro che molti di voi si sono trovati di fronte a scenari del genere. In questo articolo scoprirete un modo per realizzarlo senza compromettere la SEO. Prima di immergerci in questo argomento, analizziamo come il

Vi siete mai trovati nella situazione di dover creare un blog sul vostro sito web aziendale esistente che non funziona con WordPress? Sono sicuro che molti di voi si sono trovati di fronte a scenari del genere.

In questo articolo scoprirete un modo per ottenerlo senza compromettere la SEO.

Prima di addentrarci in questo argomento, analizziamo come le organizzazioni e le istituzioni utilizzano l'hosting del blog separatamente dal sito web principale.

In quali circostanze è necessario avere un blog separato dal sito web principale?

Molte grandi aziende hanno sistemi informatici complicati, che rendono difficile per i loro dipartimenti interni guardare al di fuori dell'ambito dei loro sistemi interni. Prendiamo ad esempio il desiderio del reparto di content marketing di creare un blog per illuminare il proprio pubblico. Tuttavia, l'attuale sistema rende impossibile la creazione di un blog, ad esempio su hosting WordPress.

D'altra parte, le aziende possono utilizzare il ".NET Framework" per le loro applicazioni web, mentre altre aziende esitano a utilizzare framework Open-Source.

Quando avete bisogno di ospitare un blog in uno degli scenari sopra elencati, non avete altra scelta che pensare a un server alternativo per ospitarlo. Questo server è quindi esterno al server in cui avete ospitato il vostro sito web. Vediamo alcune di queste opzioni e il loro impatto, che ne dite?

Quali sono le opzioni per ospitare il blog WordPress separatamente?

Hosting su un sottodominio

Ad esempio, se il vostro sito web principale ha un URL di www.myorganization.com, i professionisti più competenti del passato sarebbero propensi a installare il blog WordPress acquistando un sottodominio del dominio principale. Ad esempio, in questa situazione, il blog sarebbe ourblog.myoraginzation.com.

In passato, questa soluzione sarebbe stata perfetta. Tuttavia, attualmente, quando si punta a generare una quantità considerevole di traffico sul proprio blog, è necessario considerare anche gli aspetti SEO (Search Engine Optimization). Ne parleremo nella prossima sezione.

Impatto dell'installazione del blog su un sottodominio per la SEO

Quando utilizzare un sottodominio

Il motivo principale per cui i proprietari di siti acquistano sottodomini è quello di avere contenuti separati basati su vari prodotti per il proprio marchio. Anche se ci possono essere altre ragioni, come un sito web separato per i dispositivi mobili e per guidare il traffico, la ragione fondamentale sta nei contenuti e nell'espansione del vostro marchio basato su diverse nicchie.

Ad esempio, Wikipedia ha dei sottodomini per separare i contenuti in base alle varie lingue, come fr.wikipedia.com o es.wikipedia.com.

NPR, una popolare rete radiofonica, è un altro esempio in cui si concentra al 100% sulle notizie e sui contenuti. Tuttavia, ha anche un sottodominio, https://shop.npr.org/, che si concentra principalmente sul merchandising. 

Quindi, negli scenari sopra citati, ha senso avere un sottodominio. Ma nel caso dei blog?

Sottodominio o cartella separata per i blog?

I motori di ricerca considerano i sottodomini come siti web separati. Ciò implica che i motori di ricerca devono effettuare il crawling e l'indicizzazione di ciascun sottodominio separatamente. Inoltre, i backlink verso il dominio principale non vengono condivisi con i sottodomini. Pertanto, costruire il page rank di un sottodominio è quasi altrettanto difficile quanto quello del dominio principale.

Pertanto, sarebbe utile avere dei sottodomini nelle circostanze in cui ha senso farlo. Pertanto, un'opzione ideale per i blog sarebbe quella di avere il blog come sottodirectory del sito principale.

Tuttavia, come ho accennato sopra, come potete farlo in circostanze in cui il vostro sito principale opera e quando lo riscaldate su una piattaforma diversa che non supporta l'hosting WordPress?

Proprio a questo servono i reverse proxy, di cui vi forniremo una panoramica nella prossima sezione.

Cosa sono i reverse e i forward proxy?

La comprensione del concetto di reverse proxy sarebbe più semplice se si sapesse cosa fa un forward proxy.

Forward Proxy - Un forward proxy inoltra tutte le richieste in arrivo da tutti i nodi della LAN (Local Area Network) al server di destinazione. Il server di destinazione non ha alcuna idea dell'origine della richiesta e invia la risposta al client che ha avviato la richiesta tramite il forward proxy. Il diagramma seguente lo illustra


Proxy inverso: Al contrario, un Reverse Proxy si trova di fronte ai server e invia una richiesta al server corretto quando il client avvia una richiesta. Quando il server appropriato restituisce la risposta, il reverse proxy la restituisce al dispositivo client. Al dispositivo client sembrerà che il server reverse proxy abbia elaborato tutte le richieste. I reverse proxy sono ideali in situazioni in cui la stessa porzione di un'applicazione web viene ridimensionata su molti server diversi.

Per saperne di più sui proxy reverse e forward, potete consultare questo articolo.

Proxy inverso in uno scenario WordPress

Allo stesso modo, è possibile utilizzare un Reverse Proxy per indirizzare il traffico verso il server in cui è ospitato il blog WordPress. D'altra parte, il Reverse Proxy indirizzerà il traffico non legato al blog verso il server in questione. So che è più facile a dirsi che a farsi. Per questo motivo, facciamo una dimostrazione con un esempio. 


Supponiamo che, come mostrato nel diagramma seguente, il vostro sito web sia https://www.somedomain.com ospitato su un server web che non supporta WordPress. Tuttavia, il vostro team di content marketing muore dalla voglia di avere un blog. Quindi, considerando tutti i fatti SEO menzionati sopra, il team di sviluppo Web non ha altra scelta che installare il blog nella directory "blog". Pertanto, l'URL del blog apparirà come https://www.somedoamin.com/blog.

Poiché il sito web principale non supporta WordPress, ecco i passaggi che il team di sviluppo web deve seguire:

  1. Contattare gli amministratori di somedomain.com e scoprire se supportano il Reverse Proxy.
  2. Se lo fanno, potete chiedere loro di configurare il Reverse proxy sul loro server con i dati in cui ospitate il blog WordPress.
  3. Parallelamente alla fase precedente, è necessario trovare un server host come Kinsta per gestire il vostro blog WordPress. Questo blog avrà ora un indirizzo IP separato, poiché è ospitato in modo diverso dal server web che ospita il vostro sito principale.
  4. Avreste bisogno di un URL per questo blog, che dovrebbe esserehttps://www.somedomain.com/blog.Since un dominio che non può avere una cartella nel dominio principale; il modo migliore è far puntare il sottodominio https://blog.somedomain.com a questo nuovo server.
  5. Quindi è possibile configurare il Reverse Proxy in modo tale che se una richiesta arriva come https://www.somedomain.com/blog, tale richiesta verrà indirizzata al sottodominio https://blog.somedomain.com.This Il passo richiede la creazione di una cartella chiamata "blog" nella directory principale di somedomain.com. Quindi sarebbe utile inserire il seguente file con il nome "web.config" e il codice sottostante.

Creazione del file web.config

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.webServer>
  <rewrite>
   <rules>
    <rule name="blog.somedomain.com" stopProcessing="true">
     <match url=".*" />
     <conditions>
      <add input="{HTTP_HOST}" pattern="^blog.somedomain.com$" />
      <add input="{PATH_INFO}" pattern="^/blog/" negate="true" />
     </conditions>
     <action type="Rewrite" url="\blog\{R:0}" />
    </rule>
   </rules>
  </rewrite>
 </system.webServer>
</configuration>

Nelle due righe seguenti, "blog.somedomain.com" deve essere sostituito dal sottodominio in cui si trova il vostro blog:

 <rule name="blog.somedomain.com" stopProcessing="true">
<add input="{HTTP_HOST}" pattern="^blog.somedomain.com$" />

Poi, in queste due righe, potete sostituire la cartella "blog" se le avete dato un nome diverso:

<add input="{PATH_INFO}" pattern="^/blog/" negate="true" />
<action type="Rewrite" url="\blog\{R:0}" />

Nella fase finale, anche se abbiamo usato un sottodominio, questo non influirà sulla SEO, poiché il traffico sarà generato verso la cartella del blog del sito principale. Pertanto, il reindirizzamento al sottodominio è un processo interno che non influisce sulla SEO.

Come si crea un Reverse Proxy in Apache Server?

Le circostanze discusse sopra si verificano quando si utilizza un server che non supporta PHP. Tuttavia, se ci si trova in uno scenario in cui il sito principale è in esecuzione in PHP o Drupal, ad esempio, ma si desidera avere un sito diverso per il blog nello stesso dominio, è necessario configurare il Reverse Proxy secondo i passaggi indicati di seguito.

Ma prima di ciò, è necessario assicurarsi di avere due siti attivi e funzionanti. Uno è https://www.somedomain.com e l'altro è con WordPress installato con un sottodominio, https://blog.somedomain.com.

Prima di tutto, è necessario aprire il terminale del server Apache tramite SSH. Quindi è necessario abilitare il modulo proxy di Apache utilizzando questo comando:

sudo a2enmod proxy proxy_http ssl

Questo comando riavvia Apache nella maggior parte dei casi per ricaricare le nuove direttive definite in precedenza:

Il passo successivo è quello che stavate aspettando. Si tratta di creare il reverse proxy modificando il file host virtuale del server.

<VirtualHost *>
DocumentRoot /var/www/app/public
SSLProxyEngine On ProxyRequests off
ProxyPass /blog http://blog.somedomain.com
ProxyPassReverse /blog http://blog.somedomain.com
</VirtualHost>

Due punti fondamentali da notare sono:

  1. ProxyPass: Creerà un reverse proxy per il percorso indicato sopra
  2. ProxyPassReverse: Le intestazioni delle risposte HTTP fornite attraverso questo proxy inverso saranno intercettate e riscritte per corrispondere al server Apache.

Ora i passi successivi riguardano WordPress, che è tipico di entrambi gli scenari sopra descritti.

Aggiornamento di WordPress

Quindi dovete andare sul server dove avete installato WordPress e aggiornare il file wp-config.php. Questo perché di solito non si configura WordPress per funzionare su un reverse proxy.

Quindi è necessario aggiornare il file wp-config.php come indicato di seguito:

$_SERVER['REQUEST_URI'] = str_replace("/wp-admin/", "/blog/wp-admin/", $_SERVER['REQUEST_URI']);

Poi, nello stesso file, si aggiornano le seguenti variabili:

Nel frattempo, è possibile aggiornare i valori di configurazione del database come indicato di seguito:

UPDATE wp_options SET option_value = 'https://www.somedomain.com/blog' WHERE option_name IN('siteurl', 'home');

Il passo successivo è modificare il file .htacess in modo da poter riscrivere correttamente gli URL:

Diventa:

RewriteRule . /blog/index.php [L]

Dopo aver completato tutti i passaggi sopra descritti, è necessario assicurarsi che i link ai post e alle categorie funzionino come previsto. Per farlo, è necessario accedere con il vecchio URL del sottodominio, come indicato di seguito:

blog.somedomain.com/wp-login.php

Sarebbe utile se si navigasse in "impostazioni" dalla dashboard principale e poi si facesse clic sulla scheda "Generale".

Nel campo Indirizzo del sito (URL) aggiornare come segue:

Dopo aver fatto ciò, se avete ancora dubbi sul corretto funzionamento degli URL, potete installare il plugin "Better Search Replace". Questo aggiornerà tutti i record del database, se necessario.

Inoltre, è necessario prestare attenzione all'aggiornamento dei canonicals e del robot.txt. 

Dopo aver fatto ciò, se avete ancora dubbi sul corretto funzionamento degli URL, potete installare il plugin "Better Search Replace". Questo aggiornerà tutti i record del database, se necessario.

Inoltre, è necessario prestare attenzione all'aggiornamento dei canonicals e del robot.txt.

Conclusione

Ora avrete scoperto che WordPress è altamente personalizzabile. Questo perché è possibile utilizzare WordPress per ospitare separatamente solo la parte del blog del sito web e non toccare il resto. Come avete visto in questo blog, il resto del sito potrebbe essere ospitato su piattaforme diverse che non supportano WordPress.

Pertanto, includere il blog nel resto del sito web può essere un compito difficile. Tuttavia, è possibile superarle utilizzando i reverse proxy.

Restate sintonizzati per ulteriori articoli.