RISOLTO sito: redirect automatico con codice stato 404

Stato
Discussione chiusa ad ulteriori risposte.

stene

Nuovo Utente
8
1
Buonasera a tutti,
sono nuovo del forum e volevo sapere come configurare il file web.config. In pratica sto finendo di sviluppare un sito (no CMS) e vorrei fare in modo che se si prova ad accedere ad una pagina inesistente del dominio, ci sia un redirect automatico verso la home (index.html). Il dominio è sotto Aruba e utilizza il servizio "Hosting Windows Basic". Ho trovato la seguente informazione (fonte Aruba):

È possibile creare una pagina personalizzata su Domini in Hosting Windows 2008 e Hosting Windows Server 2012 R2 per l'errore 404 "Pagina non trovata" e simili, tramite l'uso di web.config da pubblicare in cartella radice del Dominio. In particolare è possibile reindirizzare l'errore 404 per pagine asp, html, php, aspx etc. usando ad esempio il codice seguente:

Codice:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.web>
 <customErrors mode="On" defaultRedirect="error.asp">
  <error statusCode="404" redirect="/error.asp" />
 </customErrors>
 </system.web>
 <system.webServer>
 <httpErrors errorMode="Custom">
  <remove statusCode="404" subStatusCode="-1" />
  <error statusCode="404" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" />
 </httpErrors>
 </system.webServer>
</configuration>
Ho provato ma niente, qualcuno mi può dare qualche dritta?
Vi ringrazio
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
ciao puoi fare semplicemente una pagina HTML statica con dentro ciò che vuoi e richiami quella dove mancano le pagine.
Esempio hai un menu e sul click deve aprire la pagina x? se la pagina x non è ancora costruita apri la tua 404.html e questa è una plausibile soluzione.

senno cosi
<customErrors mode="On" defaultRedirect="~/errors/GeneralError.aspx">
<error statusCode="404" redirect="~/errors/PageNotFound.aspx" />
</customErrors>
 

stene

Nuovo Utente
8
1
Ciao Skills, grazie per avermi risposto. Ti spiego la mia situazione, in pratica sto aggiornando un sito, il quale contiene delle pagine superflue che andranno eliminate con l'aggiornamento.
Dato che ci può essere traccia nei motori di ricerca delle pagine eliminate, vorrei che chi eventualmente accederà venga riportato nella home.
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
prova usare allora ciò che ti ho scritto
va nel web config
 

stene

Nuovo Utente
8
1
Buongiorno Skills,
non riesco proprio a risolvere questo problema, sarò duro ma non mi è chiaro come procedere. Il file web.config.xml lo devo creare io e metterlo nella radice del sito (percorso www.xxxx.it/web.config.xml)?

Al suo interno inserire:

Codice:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.web>
<customErrors mode="On" defaultRedirect="~/errors/GeneralError.aspx">
<error statusCode="404" redirect="~/errors/PageNotFound.aspx" />
</customErrors> 
 </system.web>
 <system.webServer>
 <httpErrors errorMode="Custom">
  <remove statusCode="404" subStatusCode="-1" />
  <error statusCode="404" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" />
 </httpErrors>
 </system.webServer>
</configuration>
Post unito automaticamente:

 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
il tuo è un sito asp.net?
Se si il web config viene generato all'interno della directory del sito ad esempio ti mostro il mio visual studio

1553245429002.png

se tu noti il quadrante rosso è il web config.
Li dentro devi mettere i parametri che ti ho passato nel post precedente.
 

stene

Nuovo Utente
8
1
Il mio non è asp. Utilizzo html-css e pensavo fosse possibile farlo anche nel mio caso visto che Aruba scrive "... è possibile reindirizzare l'errore 404 per pagine asp, html, php, aspx etc."
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
puoi mostrarmi la struttura del tuo sito?
 

stene

Nuovo Utente
8
1
è un'unica pagina html sviluppata con Bootstrap
Post unito automaticamente:

Mi riferisco alla nuova versione del sito che sto completando
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
allora se hai un unica pagina Html che ne deve richiamare altre crei una pagina 404 fittizia e richiami quella sul tuo menu etc
 

stene

Nuovo Utente
8
1
Riparto da zero, mi sarò spiegato male.
Il vecchio sito contiene diverse pagine e andrà sostituito col nuovo (1 pagina html). Per esempio, è online il nuovo sito, lo cerco su Google e nella ricerca compare il link ad una pagina, per esempio "miao.html", che non c'è più, quindi il server restituirà la pagina con codice 404, se vi si accede. Il mio problema potrebbe esserci se le informazioni non vengono aggiornate velocemente dal/dai motore/i di ricerca, quindi vorrei che non ci sia più questa "fastidiosa pagina" ma bensì un redirect automatico alla home.
Pensi che il problema non me lo dovrei porre perché non verranno trovate tali pagine vecchie?
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
potrebbe darsi che vengano trovate ma di solito se il dominio è lo stesso dovrebbero sparire
Il vecchio sitoweb come è scritto??
 

stene

Nuovo Utente
8
1
Il vecchio è statico (html e css)
Post unito automaticamente:

Il dominio rimarrebbe sempre lo stesso
Post unito automaticamente:

Comunque ho appena fatto un test. Ho eliminato una pagina che risultava dalla ricerca su Google, ho provato a ripetere la ricerca e la trova ancora. Cliccandoci, ovviamente, restituisce 404.
 
Ultima modifica:

Skills07

Head of Development
Staff Forum
Utente Èlite
35,447
11,502
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
e tu ovviamente vuoi fare la redirect! a sto punto modifica la home statica del primo sito e lo butti direttamente sul tuo:
facendo una funzione

JavaScript:
body onload="funzione();"


function funzione(){

window.location.href = "nuovosito.com";

}
 

Mursey

Super Moderatore
Staff Forum
Utente Èlite
8,244
5,674
pensavo fosse possibile farlo anche nel mio caso visto che Aruba scrive "... è possibile reindirizzare l'errore 404 per pagine asp, html, php, aspx etc."
C'è però una parte importante che hai omesso: È possibile creare una pagina personalizzata su Domini in Hosting Windows 2008 e Hosting Windows Server 2012 R2
Vuol dire che devi avere progetti con WebSite in asp.net, o comunque progetti che fanno uso del web.config.
Una semplice pagina html non usa web.config.

Nota importante: Come vedi si parla di hosting, vuol dire che l'applicazione non è solo composta da pagine o contenuti web ma comprende un web server con la capacità di rispondere alle richieste (POST, GET, ...) ed elaborare il risultato.
E' proprio quel host che, in caso di errore 404, indirizza verso una pagina predefinita.
 
Ultima modifica:
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!