Come distribuire un'applicazione nextjs su cpanel?
Ho seguito questi passaggi per distribuire il mio nextjs su cPanel.
vai a package.json e aggiungi questa riga:
"homepage": "http://afsanefadaei.ir"corri
next buildper avere una.nextcartella come cartella di buildvai alla
cpanel >> file manager >> public_htmlcartella e carica il contenuto della.nextcartella in questa directoryaggiungi o modifica questo file:
.htaccessa:
ma quando vado sul sito mi trovo di fronte a questo:
Sai cosa c'è di sbagliato in questo?
Risposte
- Il tuo
.nextnon hai file index.html. - Sembra che tu abbia il lato server (principalmente usando nodejs), ma sfortunatamente non puoi eseguire quel lato server da cpanel.
- Come so, dovresti usare al
next exportposto dinext buildse tendi ad avere solo il lato frontend.
Ma la cosa più importante è il numero 1, assicurati di averlo index.htmlall'interno della tua .nextcartella.
Ho caricato out(che viene generato facendo npm run build && npm run export) una cartella public_htmle creato un .htaccessfile come
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-L
RewriteRule . /index.html [L]
</IfModule>
Ha funzionato per me 😁
Problema: quando aggiorno la pagina su un percorso diverso diciamo
/about, porta ilindex.jscontenuto della pagina ma l'URL non cambia in/
Distribuiscilo come applicazione NodeJS.