2013-01-03 18 views
11

Sono costretto a ricostruire la mia macchina dalle impostazioni di fabbrica. Tutto dovrebbe essere uguale, versione IIS (7.5), sistema operativo (Windows 7) e file del mio sito web. Tuttavia, c'è qualcosa di diverso, perché dopo la configurazione il mio sito web e tirando il sito up locale nella mia browser, ricevo il seguente errore ...Errore HTTP 500.19 su IIS7 "Malformed XML" in web.config

Errore HTTP 500.19 - Internal Server Error La pagina richiesta non può essere accessibile a causa i relativi dati di configurazione per la pagina non sono validi. Codice di errore 0x8007000d

Quando ho look up error code 0x800700d mi dice ...

Analisi: Questo problema si verifica perché il file ApplicationHost.config o nel file Web.config contiene un elemento XML valido. Per risolvere questo problema, vedere la soluzione 1.

Poi offre una risoluzione di ...

Soluzione consigliata: eliminare l'elemento XML non valido dal file ApplicationHost.config o dal Web. file di configurazione.

Tuttavia non vedo XML malformato e quando rimuovo del tutto il file web.config, il sito viene caricato ma la riscrittura dell'URL non funziona (ovviamente). Inoltre, anche se cancello tutto il codice XML dal file web.config, lasciandolo vuoto, ottengo lo stesso errore. Sembra avere un problema con il fatto che il file web.config esiste del tutto.

Per riferimento, ecco il contenuto del mio web.config ...

<?xml version="1.0" encoding="UTF-8"?> 

<!-- this file can be deleted if you're not planning on using URL rewriting with IIS 7. --> 
<!-- you can add your own files and folders that should be excluded from URL rewriting by adding them to the "pattern" below. --> 
<!-- please read the online documentation on http://cfwheels.org for more information about URL rewriting. --> 

<!-- SET ENABLED TO TRUE BELOW TO TURN ON THE URL REWRITING RULES --> 

<configuration> 
<system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="ColdFusion on Wheels URL Rewriting" enabled="true"> 
       <match url="^(.*)$" ignoreCase="true" /> 
       <conditions logicalGrouping="MatchAll"> 
        <add input="{SCRIPT_NAME}" negate="true" pattern="^/(flex2gateway|jrunscripts|cfide|cfformgateway|railo-context|files|images|javascripts|miscellaneous|stylesheets|robots.txt|sitemap.xml|rewrite.cfm)($|/.*$)" /> 
       </conditions> 
       <action type="Rewrite" url="/rewrite.cfm/{R:1}" /> 
      </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 
</configuration> 

Qualcuno ha qualche idea su come risolvere questo problema?

+0

Abbiamo due server a cui non piace 'encoding = "UTF8"'. Un altro server non ha alcun problema con esso. Non ho ancora idea del perché. – Fried

risposta

16

Ti sei ricordato di reinstallare il rewrite module? Di default non è incluso in IIS 7.5.

Oltre a ciò, ecco un similar question - Penso che la parte di malformato sia un'aringa rossa.

+3

Grazie JohnW! Ho finalmente risolto questo problema. Ho avuto il modulo di riscrittura installato, ma dopo aver letto il link che mi hai mandato e tutti i link correlati pubblicati, ho pensato che potesse essere una delle due cose ... 1) AJAX non è stato installato correttamente 2) la riscrittura il modulo non è stato installato correttamente. Così, ho reinstallato .NET, quindi ho reinstallato il modulo di riscrittura e ora funziona correttamente. Forse l'ultima volta che ho installato il modulo di riscrittura prima di .NET ... non sono sicuro. –

+0

Grazie! ha funzionato. –

-1

Mi trovavo nella stessa situazione in cui cercavi XML. ho trovato la soluzione. nel file web.config, nella parte superiore del file, c'è una sezione xml. eliminare il contenuto di seguito, questo risolve il mio problema, in seguito il sito può essere aperto.

<system.net> 
<defaultProxy> 
    <proxy autoDetect="true" /> 
</defaultProxy> 

-2

basta creare nuova raccolta siti e sostituire il nuovo web.config per il corrotto uno, lavoro per me pensava

1

Dopo tanto dolore ho potuto risolvere questo errore. Il vero motivo per me è che stavo usando una riscrittura di URL in config. Dopo aver rimosso l'errore è andato. Quello che segue è il codice che ho rimosso da web.config.

<serverRuntime frequentHitThreshold="1" frequentHitTimePeriod="10:00:00"/> 
<rewrite> 
    <rules> 
    <rule name="HTTP to HTTPS redirect" stopProcessing="true"> 
     <match url="(.*)"/> 
     <conditions> 
     <add input="{HTTPS}" pattern="off" ignoreCase="true"/> 
     </conditions> 
     <action type="Redirect" redirectType="Permanent" url="https://wikigurus.com/{R:1}"/> 
    </rule> 
    </rules> 
</rewrite> 
0

Questo problema si è verificato anche con me ... Prova questo per il codice di errore 0x8007000d.

<?xml version="1.0" encoding="UTF-8"?> 

Elimina questa riga dal file web.config.

Questo è un elemento XML non valido.

Eliminarlo o commentarlo.

Problemi correlati