Jump to content

duplicare sito prestashop 1.7.5 su altro dominio (no migrazione)


Recommended Posts

Salve a tutti, mi rivolgo a voi perché ho un problema: ho un sito fatto e finito che attualmente funziona regolarmente con prestashop 1.7.5 tradotto tutto e per tutto e già configurato.
Per questione di praticità e non dover rifare sempre tutto da zero mi chiedevo se fosse possibile copiare la cartella via ftp del sito ed il relativo database mysql su un nuovo dominio e un nuovo database, non parlo di migrazione ma fare una copia per poi andare a configurare i campi del nuovo sito legati al nuovo cliente.

 

Ho letto varie guide sia qui che sul forum inglese ma nulla, quando faccio queste operazioni il nuovo sito mi rimanda sempre al vecchio, eppure ho esportato il file del database e modificato i parametri host, user, password e nome database con quelli nuovi sostituendoli ai vecchi; inoltre ho modificato gli stessi anche sul file parameters.php che si trova nella cartella app/config/ ma senza che il risultato sia cambiato. Potete aiutarmi o devo rassegnarmi a partire sempre da zero e ritradurre manualmente tutti i campi?

 

Grazie mille

Link to comment
Share on other sites

On 20/1/2019 at 3:39 PM, gigapoint dice:

Salve a tutti, mi rivolgo a voi perché ho un problema: ho un sito fatto e finito che attualmente funziona regolarmente con prestashop 1.7.5 tradotto tutto e per tutto e già configurato.
Per questione di praticità e non dover rifare sempre tutto da zero mi chiedevo se fosse possibile copiare la cartella via ftp del sito ed il relativo database mysql su un nuovo dominio e un nuovo database, non parlo di migrazione ma fare una copia per poi andare a configurare i campi del nuovo sito legati al nuovo cliente.

 

Ho letto varie guide sia qui che sul forum inglese ma nulla, quando faccio queste operazioni il nuovo sito mi rimanda sempre al vecchio, eppure ho esportato il file del database e modificato i parametri host, user, password e nome database con quelli nuovi sostituendoli ai vecchi; inoltre ho modificato gli stessi anche sul file parameters.php che si trova nella cartella app/config/ ma senza che il risultato sia cambiato. Potete aiutarmi o devo rassegnarmi a partire sempre da zero e ritradurre manualmente tutti i campi?

 

Grazie mille

ciao, cerca le tabelle degli url e uri nel database e imposta il nuovo dominio. Ora non ricordo con precisione il nome delle tabelle ma se fai una ricerca le trovi subito.

Link to comment
Share on other sites

Grazie mille domani vedrò di provare. Io avevo sostituito il vecchio dominio con il nuovo con l'azione "trova e sostituisci" del programma tipo notepad++ però c'era sempre il rimando al vecchio dominio. Non è che per caso devo sostituire gli url anche nel file htaccess? Se invece faccio un'installazione pulita di prestashop con nuovo database e poi carico via ftp una vecchia installazione senza ricopiare vecchio file .htaccess e cartella backend e cache? Potrei risolvere o fallirei?

 

Link to comment
Share on other sites

Non so se può esserti utile, ma per fare un nuovo file htaccess ti basta:

- disabilitare Friendly URL in Preferences->SEO & URL

- pulire cache

- cancellare il file htaccess

Quando riabiliti i friendly url dal BO, il file si rigenera nuovo.

Controlla anche manualmente da Mysql nel nuovo database tabelle:

- ps_configuration nelle chiavi PS_SHOP_DOMAIN and PS_SHOP_DOMAIN_SSL;

- ps_shop_url

Ciao, fai sapere se riesci

 

Link to comment
Share on other sites

scusate ancora ma non ne sto uscendo fuori.

Ricapitolo tutti i passaggi che faccio perché così forse riuscite a capire dove sbaglio (installazione prestashop 1.7.4:

1) ho il sito www.sito1.it funzionante al 100% con database1 e voglio ricopiarlo su www.sito2.it con database2.

www.sito2.it e database2 sono già stati creati e risultano vuoti.

2) copio via ftp tutta la cartella www.sito1.it ed esporto con il tasto apposito "esporta" il database1 selezionando tutte le sue tabelle.

3) sono andato a modificare nel file del database le ps_configuration impostando nelle chiavi PS_SHOP_DOMAIN and PS_SHOP_DOMAIN_SSL in entrambe il valore "www.sito2.it"
così come ps_shop_url sempre valore "www.sito2.it". A scanso di equivoci ho provato aprendo il file sql in sublime text a sostituire la dicitura www.sito1.it con www.sito2.it

4) ho ricopiato via ftp l'intera cartella www.sito1.it nel dominio www.sito2.it

5) ho importato il file database1 modificato come sopra nel database2 che era senza tabelle.

6) nella cartella app/config ho modificato il file parameters.php sostituendo i parametri del database1 (host, user, nome tabella e password) con quelli del database2.

 

Alla fine la storia è sempre la stessa: da frontend www.sito2.it mi rimanda sempre su www.sito1.it cosa che non dovrebbe ed ora siccome il BO di sito1 era www.sito1.it/admin035a0bpxt se vado su www.sito2.it/admin035a0bpxt o mi rimanda al backend di sito1 oppure mi da pagina bianca.

 

Per l'ennesima volta sto riprovando a fare tutto da zero. Potete nel frattempo spiegarmi cosa sbaglio? il file .htaccess ho provato ad aprirlo ma non mi risultano riferimenti all'url www.sito1.it, di seguito il dettaglio .htaccess

 

# Use the front controller as index file. It serves as a fallback solution when
# every other rewrite/redirect fails (e.g. in an aliased environment without
# mod_rewrite). Additionally, this reduces the matching process for the
# start page (path "/") because otherwise Apache will apply the rewriting rules
# to each configured DirectoryIndex file (e.g. index.php, index.html, index.pl).
DirectoryIndex index.php

# By default, Apache does not evaluate symbolic links if you did not enable this
# feature in your server configuration. Uncomment the following line if you
# install assets as symlinks or if you experience problems related to symlinks
# when compiling LESS/Sass/CoffeScript assets.
# Options FollowSymlinks

# Disabling MultiViews prevents unwanted negotiation, e.g. "/app" should not resolve
# to the front controller "/app.php" but be rewritten to "/app.php/app".
<IfModule mod_negotiation.c>
    Options -MultiViews
</IfModule>

<IfModule mod_rewrite.c>
    RewriteEngine On

    # Determine the RewriteBase automatically and set it as environment variable.
    # If you are using Apache aliases to do mass virtual hosting or installed the
    # project in a subdirectory, the base path will be prepended to allow proper
    # resolution of the app.php file and to redirect to the correct URI. It will
    # work in environments without path prefix as well, providing a safe, one-size
    # fits all solution. But as you do not need it in this case, you can comment
    # the following 2 lines to eliminate the overhead.
    RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
    RewriteRule ^(.*) - [E=BASE:%1]

    # Sets the HTTP_AUTHORIZATION header removed by apache
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Keep legacy entry points
    RewriteRule ^(ajax|ajax_products_list|ajax-tab|backup|cron_currency_rates)\.php - [P]
    RewriteRule ^(displayImage|drawer|footer\.inc|functions|get-file-admin)\.php - [P]
    RewriteRule ^(grider|header\.inc|init|login|password|pdf|searchcron)\.php - [P]

    # If the URL is a legacy on index.php?controller=..., do not rewrite (let the legacy take it)
    RewriteCond  %{QUERY_STRING} (^|&)controller=|(^|&)tab=
    RewriteRule .* - [P]

    # Redirect to URI without front controller to prevent duplicate content
    # (with and without `/app.php`). Only do this redirect on the initial
    # rewrite by Apache and not on subsequent cycles. Otherwise we would get an
    # endless redirect loop (request -> rewrite to front controller ->
    # redirect -> request -> ...).
    # So in case you get a "too many redirects" error or you always get redirected
    # to the start page because your Apache does not expose the REDIRECT_STATUS
    # environment variable, you have 2 choices:
    # - disable this feature by commenting the following 2 lines or
    # - use Apache >= 2.3.9 and replace all L flags by END flags and remove the
    #   following RewriteCond (best solution)
    # RewriteCond %{ENV:REDIRECT_STATUS} ^$
    # RewriteRule ^index\.php(/(.*)) %{ENV:BASE}/$2 [R=301,L]

    # If the requested filename exists, simply serve it.
    # We only want to let Apache serve files and not directories.
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule .? - [L]

    # Rewrite all other queries to the front controller.
    RewriteRule .? %{ENV:BASE}/index.php [L]
</IfModule>

<IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>
        # When mod_rewrite is not available, we instruct a temporary redirect of
        # the start page to the front controller explicitly so that the website
        # and the generated links can still be used.
        RedirectMatch 302 ^/$ /index.php/
        # RedirectTemp cannot be used instead
    </IfModule>
</IfModule>

 

 

 

 

Link to comment
Share on other sites

3 ore fa, gigapoint dice:

# Redirect to URI without front controller to prevent duplicate content

Non è sufficiente modificare solo quei parametri nel database ma devi anche impostare URI principale, lo puoi fare da FO oppure anche da database, fai un ricerca in ps_configuration scrivendo uri.

1212923139_Screenshot(9).thumb.png.e68b7399f3016f3b6f5dae786558d4d0.png

3 ore fa, gigapoint dice:

www.sito2.it e database2 sono già stati creati e risultano vuoti.

 

devi caricare anche il database1 su database2, se è vuoto è abbastanza strano, in ogni caso modifica tutti i parametri che ti abbiamo suggerito vedrai che il redirect sparirà.

Link to comment
Share on other sites

10 hours ago, luca1711 said:

www.sito2.it e database2 sono già stati creati e risultano vuoti.

devi caricare anche il database1 su database2, se è vuoto è abbastanza strano, in ogni caso modifica tutti i parametri che ti abbiamo suggerito vedrai che il redirect sparirà.

www.sito2.it database2 erano vuoti perchè giustamente appena creati. 

Un dubbio mi viene però: se non ho capito male dovrei entrare nel BO di sito1 in SEO & URL e mettere www.sito2.it su dominio negozio, dominio ssl e uri base giusto? Poi salvo ed esco e faccio la copia del sito su fto del dominio 2 esatto o sbaglio?

Se funziona però poi www.sito1.it che ora funziona bene aprirà direttamente www.sito2.it o sbaglio? Come faccio a ripristinare da BO gli url di sito1? Posso tenere aperta il BO di sito1 mentre faccio la copia via ftp oppure no?

perchè se ho www.sito1.it/admin035a0bpxt dopo aver cambiato le url aprirò www.sito2.it/admin035a0bpxt con le stesse credenziali di accesso di sito1 giusto?

Mi sembra un circolo vizioso perchè non riesco a rimanere sul dominio che voglio e ho paura di perdere sito1 ora funzionante perchè rimanderà sempre a sito2.

 

 

Link to comment
Share on other sites

Scusa ma non ho capito bene cosa intendi, se copi un sito per caricarlo su nuovo server via FTP e con nuovo database allora sia le cartelle che il database devo essere pieni come nel negozio1 se invece vuoi semplicemente cambiare il nome dominio del negozio1 con negozio2 allora devi solo cambiare dns  delll'indirizzo di puntamento del negozio2 verso il server attuale e poi apportare le modifiche alle varie tabelle degli URL e URI se invece è una copia caricata su nuovo server con nuovo database allora devi modificare tutti i vecchi parametri con i nuovi, anche quelli di accesso al database.

Se devi lasciare tutto su lo stesso server devi cambiare solo il puntamento del nome dominio se invece ti serve avere una copia identica devi fare gli stessi passaggi di quando fai un backup cambiando poi i vari parametri url e uri.

Link to comment
Share on other sites

Scusa ma non ho capito bene cosa intendi, se copi un sito per caricarlo su nuovo server via FTP e con nuovo database allora sia le cartelle che il database devo essere pieni come nel negozio1 se invece vuoi semplicemente cambiare il nome dominio del negozio1 con negozio2 allora devi solo cambiare dns  delll'indirizzo di puntamento del negozio2 verso il server attuale e poi apportare le modifiche alle varie tabelle degli URL e URI se invece è una copia caricata su nuovo server con nuovo database allora devi modificare tutti i vecchi parametri con i nuovi, anche quelli di accesso al database.

Se devi lasciare tutto su lo stesso server devi cambiare solo il puntamento del nome dominio se invece ti serve avere una copia identica devi fare gli stessi passaggi di quando fai un backup cambiando poi i vari parametri url e uri.

Link to comment
Share on other sites

si i domini sono su due server diversi ma stesso provider (aruba).

Devo copiare lo stesso sito con database su dominio2 e database2 per non rifare installazione, configurazione e traduzioni da zero ma saranno poi due siti distinti e separati per due attività diverse.

Infatti è quello che ho fatto cambiare i parametri dal vecchio database al nuovo ma non funziona, fa sempre il redirect su sito1.

Un dubbio mi viene però: se non ho capito male dovrei entrare nel BO di sito1 in SEO & URL e mettere www.sito2.it su dominio negozio, dominio ssl e uri base giusto? Poi salvo ed esco e faccio la copia del sito su fto del dominio 2 esatto o sbaglio?

Se funziona però poi www.sito1.it che ora funziona bene aprirà direttamente www.sito2.it o sbaglio? Come faccio a ripristinare da BO gli url di sito1? Posso tenere aperta il BO di sito1 mentre faccio la copia via ftp oppure no?

perchè se ho www.sito1.it/admin035a0bpxt dopo aver cambiato le url aprirò www.sito2.it/admin035a0bpxt con le stesse credenziali di accesso di sito1 giusto?

Mi sembra un circolo vizioso perchè non riesco a rimanere sul dominio che voglio e ho paura di perdere sito1 ora funzionante perchè rimanderà sempre a sito2.

 

 

Link to comment
Share on other sites

No, devi entrare in BO di sito2 e configurare la in SEO & URL, ti consiglio di modificare direttamente tutti i parametri che ti abbiamo indicato direttamente dal database. shop url, ssl url, uri, e ora non ricordo se ne manca qualcuna salva le modifiche alle tabelle poi ti ritrovi già tutti i parametri anche nel BO di prestashop negozio2. da aruba devi puntare i dns del negozio2 verso il server del negozio2

Link to comment
Share on other sites

Sto aspettando una risposta da aruba per il puntamento dei des del negozio2 verso il server del negozio2. Il problema infatti è che i parametri erano tutti inseriti correttamente del negozio2 ma puntando su www.sito2.it/admin035a0bpxt che è il BO di negozio2 mi riportava sempre sul BO di negozio1. Aspetto che mi rispondono loro perché è assurdo ma seguendo tutto non va...

Link to comment
Share on other sites

42 minuti fa, gigapoint dice:

Bene, come non detto. Ha fatto tutto aruba. N°1 come hosting da questo punto di vista. Luca1711 ti ringrazio tantissimo ma a saperlo non ti facevo perdere tempo. Grazie a tutti 

Ma figurati, se posso do una mano volentieri.

Allora ti auguro buon lavoro ;)

Link to comment
Share on other sites

  • 1 month later...

Scusate se riapro il mio stesso topic,

volevo chiedere a titolo informativo, ma poteva essere che il sito duplicato su altro dominio non funzionava perchè non avevo settato nel BO Friendly Url su NO e Redirect all'URL canonico su NESSUN REDIRECT?

Se voglio mantenere i due siti copia attivi su due domini differenti va impostato NESSUN REDIRECT? Così sul sito originario poi reimposto FRIENDLY URL su SI mentre su quello copiato poi cancello i prodotti e lo configuro a piacere, giusto o sbaglio?

Link to comment
Share on other sites

On 1/23/2019 at 12:25 AM, luca1711 said:

Non è sufficiente modificare solo quei parametri nel database ma devi anche impostare URI principale, lo puoi fare da FO oppure anche da database, fai un ricerca in ps_configuration scrivendo uri.

1212923139_Screenshot(9).thumb.png.e68b7399f3016f3b6f5dae786558d4d0.png

devi caricare anche il database1 su database2, se è vuoto è abbastanza strano, in ogni caso modifica tutti i parametri che ti abbiamo suggerito vedrai che il redirect sparirà.

Copiando l'intera cartella del sito originario sul nuovo dominio e copiando l'intero database sul nuovo (ovviamente devo modificare i nuovi parametri del nuovo database e quelli del file parameters.php con quelli del nuovo dominio) per evitare che il sito duplicato rimandi sul dominio di partenza devo far cambiare il puntamento del server da aruba oppure no?

Perchè se dopo aver copiato la cartella del sito via ftp ed il database entro nel BO per modificare dominio negozio, dominio ssl e uri base me li andrà a modificare nel sito originario dato che fa il redirect li oppure no?

 

E' questo il passaggio che non riesco a capire... Qualsiasi modifica in BO suppongo che me la faccia sul sito di partenza e non su quello duplicato e quello originario funziona benissimo e non devo toccarlo.

Se qualcuno riuscisse e spiegarmi meglio....

Link to comment
Share on other sites

Grazie mille per la risposta.

In effetti il tema è uno a pagamento non è quello di default.

Quindi in pratica dovrei impostare in SEO & URL nel URL canonico lascio il valore 302 sul sito di partenza,

poi carico l'intera cartella del sito via ftp sul nuovo dominio e stessa cosa per il database ma nell'ftp devo cancellare

il file .htaccess giusto? Per farlo devo impostare dei permessi in filezilla? Perchè altrimenti non me lo fa fare e poi

andando nel BO dovrebbe rimanere sul nuovo dominio senza redirect, giusto o sbaglio?

Perchè l'altra volta non avevo cancellato l'.htaccess

Link to comment
Share on other sites

  • 3 weeks later...
On 12/3/2019 at 2:39 PM, gigapoint dice:

Copiando l'intera cartella del sito originario sul nuovo dominio e copiando l'intero database sul nuovo (ovviamente devo modificare i nuovi parametri del nuovo database e quelli del file parameters.php con quelli del nuovo dominio) per evitare che il sito duplicato rimandi sul dominio di partenza devo far cambiare il puntamento del server da aruba oppure no?

Perchè se dopo aver copiato la cartella del sito via ftp ed il database entro nel BO per modificare dominio negozio, dominio ssl e uri base me li andrà a modificare nel sito originario dato che fa il redirect li oppure no?

 

E' questo il passaggio che non riesco a capire... Qualsiasi modifica in BO suppongo che me la faccia sul sito di partenza e non su quello duplicato e quello originario funziona benissimo e non devo toccarlo.

Se qualcuno riuscisse e spiegarmi meglio....

Scusami ho il solito problema un pochino più grave credo,

io da remoto voglio portare tutto in locale, un clone pari pari, ho fatto tutto quello che avete detto sopra e il risultato e il seguente:

i link puntano ancora su remoto e il BO non si apre, errore 500 "La pagina non funziona".

Link to comment
Share on other sites

  • 1 year later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...