【问题标题】:Host MVC application inside Drupal application in IIS在 IIS 中的 Drupal 应用程序中托管 MVC 应用程序
【发布时间】:2020-03-03 14:48:22
【问题描述】:

我有一个 Drupal 网站和一个 MVC 网站。我想在 IIS 中将 MVC 站点作为一个 Web 应用程序托管在 Drupal 网站中。总的来说,我的 IIS 配置如下所示:

主测试的 URL 是 https://mysite.orgg/,我希望 MVC 应用程序的 URL 是 https://mysite.orgg/mymvc/home/login。当我像这样设置 IIS 并尝试浏览 MVC 应用程序的 URL 时,我看到来自 Drupal 站点的“找不到页面”错误。有什么办法可以解决这个问题吗?

【问题讨论】:

  • 能否分享详细的错误信息?您是否在所有页面上都出现错误?确保在 iis 请求过滤中选中允许未列出的文件扩展名 IIS 您的站点→请求过滤→文件扩展名选项卡→编辑功能设置→允许未列出的文件扩展名。并在 Web.Config <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <modules runAllManagedModulesForAllRequests="true" > </modules>

标签: .net asp.net-mvc iis drupal drupal-8


【解决方案1】:

我会说你必须调整 drupal 的 .htaccess(位于 web dir 中)文件,该文件捕获请求并将它们转发到 index.php。

您必须在此处添加额外的条件,例如:

RewriteRule ^(mymvc) - [L]

... 这将排除您的 mvc 路径。我最好的猜测是在此处添加:

  # Pass all requests not referring directly to files in the filesystem to
  # index.php.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^ index.php [L]

没试过,但基本思路是这样的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多