Ospitare wp-content su un altro dominio, come un CDN
In Pannello di controllo di WordPress > Impostazioni > Media e compila il campo "Percorso URL completo dei file" con il tuo altro dominio. Guarda lo screenshot qui sotto:
MODIFICA: Pensavo fosse ovvio, ma non lo è. Ecco esattamente cosa devi fare:
Dovrai mappare il tuo dominio in modo che punti a:
La directory public_html, SE è anche la directory radice della tua installazione WordPress.
La directory public_html/sottodirectory/, SE la tua installazione WordPress è in una sua sottodirectory.
Se hai un percorso personalizzato impostato in "Archivia caricamenti nella cartella", allora il tuo dominio dovrebbe puntare alla directory SOPRA la directory dei caricamenti personalizzata.
Ad esempio, supponiamo che le tue impostazioni siano così:
Archivia caricamenti in questa cartella:
media/uploads/
(implica la directory public_html/media/uploads/ -- che, come avrai intuito, è al di fuori della directory di installazione di WordPress)Percorso URL completo dei file:
http://nuovodominio.com
Allora, dovrai assicurarti che http://nuovodominio.com punti alla directory public_html/media/uploads/.
Ora, aggiungi il dominio (o sottodominio) nel campo mostrato nello screenshot sopra. Semplicemente aggiungere il dominio, senza mapparlo alla tua installazione WordPress, non servirà a nulla.
Se non sai come puntare il tuo dominio, è una domanda completamente diversa, ed è al di fuori dello scopo di Wordpress.StackExchange. Cercalo su Google, troverai sicuramente le risposte che cerchi. :)
E per quanto riguarda l'hosting delle immagini su un server e dominio diversi, non hai scelta migliore di W3 Total Cache <-- sì, un plugin di caching per WordPress.

Fantastico! Grazie. Se dovessi usare un servizio web come Amazon's CloudFront, come cambierebbe il metodo?

@messerschmidt Ah... è tutta un'altra storia. Dovresti usare un plugin per quello -- il migliore che conosco è un plugin di caching che fa proprio questo > W3 Total Cache

Grazie! Lo immaginavo. Il metodo sopra descritto dovrebbe essere sufficiente per me, ma sono curioso di provare un CDN in futuro

Le immagini verranno comunque caricate sullo stesso dominio dove si trova WordPress. modificato da toscho

Oh, questo è sfortunato. Sapresti come si potrebbe fare quello che ho chiesto nel post originale?

Questa soluzione funzionerebbe se ricarichi/cloni manualmente la cartella degli upload di wp sul server in quel campo. Quindi potrebbe funzionare. Se sei l'unico che crea contenuti nel sito - va bene, altrimenti è sbagliato :) Oppure puoi configurare il plugin BackWpUp per fare il backup ogni ora di quella cartella sul tuo server remoto :D – modificato da toscho

Il fatto è che non voglio davvero che alcun file venga caricato sul server dove è installato il sito

è impossibile. O devi riscrivere i form di upload di WP per inviare a un altro server, e un sacco di altre cose relative all'autenticazione e così via. Beh, forse qualcuno lo farà per 300$

@toscho non capisco dove non sarei educato, ma di sicuro non mi hai visto quando non lo sono davvero :D Perché questo tizio scrive senza senso. Chi ha fatto la domanda vuole usare un server DIVERSO e questo qui insegna come archiviare file nello STESSO server ma ottenerli tramite un altro dominio. Ma il fatto è questo: i file verranno comunque caricati dallo stesso server.

La mia seconda risposta:
Utilizzare un altro server non è semplice, mentre usare un sottodominio come media.dominio.com non è difficile, una volta l'ho usato nel mio sito di confronto prezzi realizzato con WP. La cosa principale per velocizzare i tempi di caricamento è utilizzare domini diversi, e anche i sottodomini vanno bene, perché i browser apriranno nuove connessioni anche per loro. Quindi usa questo tutorial: http://www.computingunleashed.com/host-images-in-sub-domain.html
Il server sarà lo stesso, ma il browser creerà una nuova connessione per caricare le immagini, quindi i tempi di caricamento saranno più brevi (se il server non è lento).

Grazie! Ma sto cercando davvero di ospitare i file in una posizione completamente diversa, per varie ragioni. Immagino che sia difficile, ma comunque possibile?

Beh, tutto è possibile, ma non conosco la risposta. È difficile, perché il caricamento dei file è una cosa LOCALE, e dovrebbero essere apportate molte modifiche per ricaricare i file su un server remoto.

Incolla questo nel tuo file .HTACCESS:
Header unset ETag
FileETag None
# BEGIN Intestazioni Expire
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 35 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Intestazioni Expire
# BEGIN Intestazioni Cache-Control
<ifModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "private"
</filesMatch>
<filesMatch "\.(x?html?|php)$">
Header set Cache-Control "private, must-revalidate"
</filesMatch>
</ifModule>
# END Intestazioni Cache-Control
Questo indicherà al browser di memorizzare nella cache tutti i file javascript, immagini e css sul computer, così le immagini non verranno scaricate dal server fino a quando non cambiano.
Puoi usare il miglior browser - Chrome - per testarlo con ctrl+shift+j nella timeline, dove puoi effettivamente vedere quanto tempo impiega a scaricare le immagini. Quelle nella cache di solito impiegano 25 ms (perché il server deve prima comunicare: il file non è cambiato, quindi usa la copia locale :))
