【发布时间】:2020-01-25 21:53:33
【问题描述】:
我开始(通过 Web 安装程序平台)在我的 Windows 2012 Server 上安装 WordPress 博客。 在同一台服务器上,我已经在运行一个 ASP.NET MVC 4.5 网站。该网站内置了一个本地化模块,该模块获取访问者的文化代码(例如“en”)并将其放置在 URL 中。 顺便说一句:我需要WordPress博客在子文件夹中运行,即:/blog
所以,总结一下: https://example.com/en 成功返回我的 ASP.NET 网站 https://example.com/en/blog 应该返回我的 WordPress 博客。
现在,当我通过打开 https://example.com/en/blog/wp-admin/install.php 继续配置 WordPress 站点时,它会显示用于输入站点标题、用户名 + 密码和电子邮件的字段。这是在 install.php?step=1 上完成的。
当点击“安装 wordpress”时,它应该带我到 install.php?step=2。但不是带我去https://example.com/en/blog/wp-admin/install.php?step2,而是带我去https://example.com/en/install.php?step=2。它只是从 URL 中删除 /blog/wp-admin/ 部分。这会导致 404,因为该页面显然不存在。
我没有在 web.config 或 IIS 中设置任何规则。我应该这样做来解决这个问题吗?
有没有人可以帮帮我?
【问题讨论】:
-
听起来像是路由问题...也许检查一下:gmass.co/blog/wordpress-pages-and-asp-net-mvc-same-iis-folder
-
是的,我确实已经看过这个博客了。但是,当我在根目录的 web.config 和 /blog 文件夹的 web.config 中都包含以下规则时,它在 mydomain.com/blog
-
在该链接中,WordPress 站点位于根目录,而 ASP.NET 位于子文件夹中。如果您将“博客”重定向到索引,它会回到根目录并尝试查找 php 页面。我会考虑为每个不同的域。混合这两种路由方案似乎很乱。
-
嗨,您是否尝试使用 URL 重写将 url en/install.php?step=2 重写回 en/blog/wp-admin/install.php?step=2?
-
@JokiesDing 是的,但这无济于事,因为它将再次使用初始字段重新加载页面(step=... 是 install.php 中的一个函数)。除此之外:问题不仅在于 install.php 页面。一旦博客安装完成,一般问题(错误的重写 url)将继续发生,在其他页面上也是如此。
标签: asp.net wordpress windows iis url-rewriting