Output SSI scompare dopo l'applicazione delle patch di protezione

Traduzione articoli Traduzione articoli
Identificativo articolo: 318176 - Visualizza i prodotti a cui si riferisce l?articolo.
Questo articolo è stato archiviato. L?articolo, quindi, viene offerto ?così come è? e non verrà più aggiornato.
È vivamente consigliabile che tutti gli utenti eseguire l'aggiornamento per Microsoft Internet Information Services (IIS) 7.0 in esecuzione su Microsoft Windows Server 2008. IIS 7.0 aumenta notevolmente la protezione dell'infrastruttura Web. Per ulteriori informazioni su argomenti relativi alla protezione IIS, visitare il sito di Web di Microsoft:
http://www.microsoft.com/technet/security/prodtech/IIS.mspx
Per ulteriori informazioni su IIS 7.0, visitare il sito di Web di Microsoft:
http://www.iis.net/default.aspx?tabid=1
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Quando si esegue un programma di inclusione sul lato server (SSI, server-side include) utilizzando il <!--# exec cgi--> applicato di comando in un server in cui è in esecuzione sia Microsoft Windows NT 4.0 con Service Pack 4 (SP4) o versione successiva o applicati in Microsoft Windows 2000 con Service Pack 2 (SP2) o versioni successive, l'output del programma non viene visualizzato nella pagina. Se si esegue lo stesso programma su un server senza patch, l'output viene visualizzato come previsto.

Cause

Dopo avere applicato questi specificato service pack, Internet Information Services (IIS) prevede di qualsiasi programma SSI è eseguito utilizzando il <!--# exec cgi--> comando per eseguire la specifica CGI (Common Gateway Interface). Questa specifica è necessario per stampare un'intestazione di Content-Type HTTP prima di qualsiasi altro output i programmi CGI. IIS in modo invisibile all'utente Ignora questa intestazione e lo rimuove dall'output del programma finale visualizzati nella pagina. Se il programma SSI non include questa intestazione, IIS esegue il programma ma non visualizza l'output. Si tratta di una modifica il comportamento delle versioni precedenti di Windows, che non richiedono le intestazioni e di cui visualizzare eventuali intestazioni HTTP incluse nella pagina prima la parte restante dell'output dal programma di SSI.

Risoluzione

È possibile rendere l'output visualizzato in uno dei due modi:
  1. Eseguire il programma utilizzando il <!--# exec cmd--> comando anziché il <!--# exec cgi--> comando. - oppure -

  2. Riscrivere il programma per stampare la riga seguente, seguita da due nuove righe, prima di qualsiasi altro output:
    Content-Type: text/html

Status

Questo comportamento legato alla progettazione.

Informazioni

Per attivare SSIs, attenersi alla seguente procedura:
  1. Avviare Internet Service Manager (ISM), che carica lo snap-in IIS per Microsoft Management Console (MMC).
  2. Nel MMC, fare doppio clic la nome computer nel riquadro di sinistra.
  3. Fare doppio clic sul sito Web per il quale si desidera abilitare SSI.
  4. Fare clic con il pulsante destro del mouse sulla directory virtuale che conterrà i file SSI abilitata. Per abilitare SSI per la home directory di un sito Web, fare clic con il pulsante destro del mouse sul sito Web.
  5. Fare clic su Proprietà e scegliere la scheda Home Directory .
  6. In autorizzazioni di esecuzione , fare clic per selezionare script ed eseguibili .
  7. Fare clic su OK . Assicurarsi di selezionare le directory che contengono i file SSI abilitata nella schermata Proprietà ereditate ignorate .Per ulteriori informazioni su come attivare il <!--# exec cmd--> comando, fare clic articolo numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
    233969Per impostazione predefinita è impostato a FALSE SSIEnableCmdDirective

Procedura per riprodurre il problema.

  1. Attivare inclusioni sul lato server per la home directory del sito Web predefinito.
  2. Compilare il seguente programma C su un server Windows NT 4.0 o Windows 2000 senza patch:
    #include <stdio.h>
    int main(int argc, char **argv) {
      printf("Hello World\n");
    
    }
  3. Denominare il file eseguibile Helloworld.exe e quindi inserire il file nella directory principale del server Web. Per impostazione predefinita, questa directory è C:\Inetpub\Wwwroot.
  4. Creare la pagina HTML abilitata SSI seguente e quindi salvare la pagina come Ssitest.shtm nella directory principale del server Web:
    <HTML><BODY>
    Exec cmd: <!--#exec cmd="c:\inetpub\wwwroot\HelloWorld.exe"--><BR>
    Exec cgi: <!--#exec cgi="/HelloWorld.exe"-->
    </BODY></HTML>
  5. Individuare http://localhost/ssitest.shtm in un computer in cui è in esecuzione Windows NT 4.0 Service Pack 3 (SP3) o versioni precedenti o Windows 2000 Service Pack 1 (SP1) o versioni precedenti. Si vedrà quanto segue:
    Exec cmd: Hello World
    Exec cgi: Hello World
  6. Applicare Windows NT 4.0 SP4 o versioni successive o Windows 2000 SP2 o versioni successive per il computer.
  7. Passare nuovamente http://localhost/ssitest.shtm. Ora visualizzato quanto segue:
    Exec cmd: Hello World
    Exec cgi:
  8. Modificare il codice per Helloworld.exe stampare un'intestazione Content-Type prima e quindi ricompilare il file:
    #include <stdio.h>
    int main(int argc, char **argv) {
      printf("Content-type: text/html\n");
      printf("Hello World\n");
    
    }
  9. Ricaricare http://localhost/ssitest.shtm in un computer che esegue Windows NT 4.0 SP4 o versioni successive o Windows 2000 SP2 o versione successiva. Ora visualizzato quanto segue:
    Exec cmd: Content-type: text/html
     Hello World
    Exec cgi: Hello World
    notare che a differenza di <!--# exec cgi--> comando, il <!--# exec cmd--> comando non rimuovere tutte le intestazioni CGI dall'output della.

Riferimenti

Per ulteriori informazioni su SSIs, vedere "Inclusioni sul lato server" nella documentazione in linea di IIS. Per visualizzare questo argomento, individuare l'Amministrazione , individuare la Gestione di siti Web e quindi individuare Inclusioni sul lato server . La documentazione di in linea di IIS è accessibile tramite l'URL seguente da qualsiasi computer con installata la documentazione di IIS:
http://localhost/iishelp

Proprietà

Identificativo articolo: 318176 - Ultima modifica: giovedì 13 febbraio 2014 - Revisione: 3.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Server 4.0
Chiavi: 
kbnosurvey kbarchive kbmt kbpending kbprb KB318176 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 318176
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com