首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows上的Permalinks不工作,web.config破坏站点--如果是这样的话,wordpress现在不支持windows服务器吗?

Windows上的Permalinks不工作,web.config破坏站点--如果是这样的话,wordpress现在不支持windows服务器吗?
EN

WordPress Development用户
提问于 2020-06-18 19:00:20
回答 3查看 1K关注 0票数 0

我有一个大型wordpress站点,我从AWS/Linux迁移到了另一个主机,即Windows 2016。

我已经在wordpress上开发了多年,但这是我一段时间以来第一次回到Windows服务器上。

我记得在更新wordpress时,它会编写一个web.config文件来更新该目录的重写结构。现在重写基本上是被破坏的-因为你不应该有破坏你的网站的管理选择。

您的重写必须在函数中包含index.php,否则直接发送id。

奇怪的是,当您选择permalink -/%类别%/%postname%/它是一个404,但是如果您在url中的类别之前手动添加index.php,它会工作。

那么,现在如何在Windows服务器上工作呢?我猜web.config没有被使用。wordpress开发是否放弃了windows服务器,而我们只是在IIS中编写重写规则?我只是想找出土地的布局,因为我还有大约5个站点要迁移,并且希望获得最佳实践(不是真正的服务器最佳实践,而是wordpress的最佳实践,因为迁移后其他站点的接管将不像技术上的那样)。

请注意,我确实试图打开web.config,它给出了一个500。更改permalinks在服务器上没有任何作用--没有添加.htaccess,也没有新的web.config。如果你需要其他信息,请告诉我。

EN

回答 3

WordPress Development用户

回答已采纳

发布于 2021-12-07 17:49:44

我相信这个问题是固定在最近的WP版本,不确定它是固定在哪一个版本。但是在较早版本的WP中,规则name="RULENAME“始终是一样的。名称必须是唯一的,否则IIS模式就会崩溃。

如果您正在复制备份或开发的完整站点,您也会遇到这种情况。

票数 0
EN

WordPress Development用户

发布于 2021-12-07 11:36:35

https://www.iis.net/downloads/microsoft/url-rewrite下载IIS重写。安装并重新启动IIS

然后修改web.config编辑web.config,添加重写代码。

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <defaultDocument>
            <files>
                <add value="index.php" />
            </files>
        </defaultDocument>

        <rewrite>
            <rules>
                <rule name="Main Rule" stopProcessing="true">
                    <match url=".*" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php" />
                </rule>
            </rules>
        </rewrite>

    </system.webServer>
</configuration>
票数 2
EN

WordPress Development用户

发布于 2021-02-20 21:45:33

您应该安装"URL重写“模块并重新启动服务器,而不仅仅是iis服务。然后重新配置"Permalink设置“。

票数 0
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/369327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档