7
votes

Pourquoi #include pas de travailler sur .asp page dans iis7.5?

J'ai vu une question similaire à cela, mais le mien est légèrement différent:

Je reçois des résultats intermittents avec #include des fichiers fonctionnant sur un serveur IIS 7.5 (R2008 V2). Mes inclut ne fonctionnent que si elles sont dans le même dossier que la page actuelle .asp, ou dans un sous-répertoire de la page en cours. C'est gênant, comme je voudrais les garder tous dans un sous-dossier A / Lib, éteint de la page principale. P>

Ma configuration: j'ai un dossier nommé DCN, assis juste en dessous du dossier wwwroot. Il existe plusieurs fichiers dans un dossier A / LIB dans le dossier DCN, de sorte que le chemin absolu est C: \ inetpub \ wwwroot \ dcn \ lib \ my_include_file.asp. Si j'ouvre une page ASP dans le dossier DCN, je peux tirer inclure des fichiers du sous-dossier / lib. Toutefois, si j'ouvre une page ASP à partir du dossier DCN / DIRECT (telle que "DCN \ DIRECT \ Search.asp.asp"), et la page Search.asp a une ligne qui dit: P>

 <!--#include file="c:\inetpub\wwwroot\dcn\lib\my_include_file.asp"-->


1 commentaires

Avez-vous vérifié l'ACL dans le dossier LIB?


3 Réponses :


5
votes

Je pense que votre problème est que les chemins parent sont désactivés par défaut dans IIS.

Vous avez deux options:

  1. en utilisant des chemins virtuels
  2. Activation des chemins de parents ASP sur IIS

    Pour plus de détails, lisez cet article sur le site Web IIS
    http: // apprendre. iis.net/page.aspx/566/classic-asp-parent-paths-are-Disabled-default/


3 commentaires

devrait fonctionner même lorsque des chemins parent sont désactivés


@eduardo - Ce ne sera pas, il n'aurai pas besoin d'utiliser à la place. prend uniquement en charge les chemins relatifs.


C'était exactement. Merci beaucoup pour l'aide!



7
votes

Yots est correct, il semble que les chemins parent sont désactivés. Si vous ne pouvez pas obtenir ceux-ci sur les chemins virtuels Utilisez plutôt:

en fonction de votre question où vous affirmez que les fichiers inclus sont dans / dcn / lib code> alors procédez comme suit: P >

<!-- #include virtual="/DCN/lib/my_include_file.asp -->


0 commentaires

4
votes

Qu'en est-il d'un #include virtuel ? Si elle se lit comme suit: xxx

Il doit trouver le fichier .inc dans le dossier Inclure sous mysite? J'ai activé et handicapé des chemins parents et j'ai essayé environ un million de choses. Je reçois toujours une erreur asp 0126 pour le fichier non trouvé. Je peux le swtichy pour inclure le fichier, puis il le trouve, mais alors le fichier.inc a un tas d'autres inclut et il ne peut donc pas les trouver, peu importe la façon dont je le modifie pour inclure le fichier ou le virtuel. Cela fonctionne dans IIS 6, mais pas IIS 7 que je déplace ce site. Il s'agit d'une page classique ASP avec principalement tout ce qui incluait les fichiers inclus

J'ai mySite dans le site Web par défaut \ dept_sites \ mysite emplacement.


0 commentaires