Buongiorno gente,
è possibile con il rewrite rule fare una riscrittura della radice del sito?
Ovvero:
vorrei farlo diventareCodice:http://www.miosito.it
in modo da farlo sembrare un dominio di terzo livello.Codice:http://www.secondo.miosito.it
Buongiorno gente,
è possibile con il rewrite rule fare una riscrittura della radice del sito?
Ovvero:
vorrei farlo diventareCodice:http://www.miosito.it
in modo da farlo sembrare un dominio di terzo livello.Codice:http://www.secondo.miosito.it
Io avevo fatto una cosa del genere -anni fa- per i domini di quarto livello, però è in PHP:
Ora, se vuoi farlo in htaccess, forse puoi fare una cosa del genere, che dovrebbe essere equivalente alla precedente:Codice PHP:<?php
function sottodominio ( )
{
$uri = $_SERVER['HTTP_HOST'];
$def = "tryphpnuke.altervista.org";
$ok = ereg("([a-zA-Z0-9\._\-]+)(\.tryphpnuke\.altervista\.org)", $uri, $sub);
if ($ok)
return $sub[1];
else
return false;
}
$subdomains = array("blog" => "/wordpress/", "sara" => "/sara/", "robby" => "/robby/", "test" => "/test/");
$sub = sottodominio();
if ($sub && isset($subdomains[$sub]))
{
header("Location: " . $subdomains[$sub]);
# Oppure include($subdomains[$sub]);
exit;
}
# Qui segue il codice della pagina "index.php", da eseguire nel caso che nessun sottodominio particolare. Nel mio caso era un semplice reindirizzamento.
?>
Vedi se funziona, che non l'ho provato..!Codice:RewriteEngine on RewriteCond %{HTTP_HOST} =blog.tryphpnuke.altervista.org RewriteRule ^(.*)$ /blog$1 [L] RewriteCond %{HTTP_HOST} =sara.tryphpnuke.altervista.org RewriteRule ^(.*)$ /blog$1 [L] RewriteCond %{HTTP_HOST} =robby.tryphpnuke.altervista.org RewriteRule ^(.*)$ /robby$1 [L] RewriteCond %{HTTP_HOST} =test.tryphpnuke.altervista.org RewriteRule ^(.*)$ /test$1 [L]
EDIT: naturalmente, devi "aggiustare" tutti gli indirizzi sostituendo il tuo dominio al mio..![]()
Ultima modifica di tryphpnuke : 04-06-2012 alle ore 13.05.24
Ma devo sempre registrare un dominio di secondo livello? Grazie comunque :)
No, aspetta, io avevo capito che tu già ce lo avessi un dominio di secondo livello (poniamo www.ciao.it) e che volessi poter fare delle specie di sottodomini con htaccess, quindi fare sì che da www.salve.ciao.it si riuscisse comunque ad accedere al tuo sito. Ho capito male?
Naturalmente, se non sono affatto sicuro che funzioni "in discesa" (fare domini di terzo livello a partire da un dominio di secondo livello), sono invece sicurissimo che NON funzioni "in salita" (fare domini di secondo livello a partire da un dominio di terzo livello).
No mi son spiegato male: io ho un dominio di secondo livello, che deve "diventare" di terzo livello quando viene creato un post specifico ( sto su WP ). In pratica deve diventare
ecc ecc eccCodice:http://www.primo.miosito.it http://www.secondo.miosito.it http://www.terzo.miosito.it
Aspetta.. tu vuoi fare in modo che, ogni volta che crei un post sul tuo blog, ti si crei automaticamente un sottodominio che punta a quel post?
Nel caso, credo che tu debba rigenerare ogni volta il file .htaccess, perché che io sappia l'istruzione RewriteCond esegue un match sul URL-path, e non c'è modo di fare sì che lo faccia sull'host, come invece a te servirebbe.
EDIT: so che non me lo hai chiesto, e quindi se vuoi ignora pure queste righe, ma mi permetto comunque di dirti che non mi sembrerebbe una grande idea, se non altro per motivi di indicizzazione. Non credo che i motori di ricerca apprezzerebbero questo tuo sforzo, anzi temo che finiresti con lo "spalmare" tra più sottodomini la "notorietà" di un solo sito. Hai provato a guardare se riesci a fare le stesse cose con i permalink, o comunque con qualche altra forma di URL SEO-friendly?
Ultima modifica di tryphpnuke : 04-06-2012 alle ore 19.22.38
Il problema è che WP attua il rewrite rule dopo la radice del sito. Posso tranquillamente creare un url personalizzato per quel post, se fatto dopo la radice, ma se mi garantisci che ciò potrebbe dare problemi di SEO ( difatti è quello ciò che mi hanno chiesto ), cercherò di creare una rule adatta per quel tipo di pubblicazione ( difatti è un custom post, fortunatamente potrò filtrare dove fare la sostituzione )