【问题标题】:Wordpress, IIS7, Permalinks and index.phpWordpress、IIS7、永久链接和 index.php
【发布时间】:2010-07-15 15:56:40
【问题描述】:

我知道以前可能有人问过这个问题,但我已经阅读了互联网上的数百篇帖子,但没有任何效果......

我有一个 wordpress 安装 (WP 3.0),在 MySQL 和 PHP 5.2.6 上运行。

我正在尝试将永久链接设置为 site.com/postname。当我将设置中的永久链接设置为

/%postname%

它按我想要的方式显示,但我在每个页面(除了主页)上都得到 404。

当它处于这种状态时,如果我手动输入site.com/index.php/postname,我会得到页面,但是站点上的所有链接都指向site.com/postname,导致404.. .

我已经在这个房子周围转了一圈,遇到了几种不同的情况。在某一时刻,所有链接都指向 site.com/postname,而不是 404,它们都只是显示主页内容

【问题讨论】:

    标签: php wordpress permalinks


    【解决方案1】:

    您需要进行 URL 重写。这通常在您站点的 .htaccess 文件中完成。在 IIS 上,您需要第三方插件来提供此功能。

    这是我的 IIS/WP3 博客中的 .htaccess,我是否在 /blog/ 下托管,您可以从下面删除:

    php_value memory_limit 48M
    Options +FollowSymlinks
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^blog/.* /blog/index.php [NC,L]
    

    【讨论】:

    • 您可能会发现阅读 .htaccess 和 mod-rewrite 标签很有用 - stackoverflow.com/questions/tagged/.htaccess stackoverflow.com/questions/tagged/mod-rewrite
    • 是的,我也尝试过。我目前在 WP 中安装了 ISAPI ReWriter 插件,根目录中有一个 .htaccess 文件。目前和你的一样,除了规则是:RewriteRule ^/.* /index.php [NC,L]
    • 我也尝试过使用 IIS7 URL Rewrite 模块......但不确定我是否做错了什么......我通过 web.config 文件使用它,似乎无法让任何尝试的组合都能正常工作。
    • 我的托管站点正在使用 Helicon Tech ISAPI_Rewrite v3,不确定他们是如何配置的,但它正在运行并且当我使用上述 .htacess 时它可以工作
    • 你知道这是否与IIS7有关吗?我已经尝试在根目录中使用上述.htaccess,并从RewriteRule的两个部分中删除了'blog',但我只是处于/pagename导致404的情况,并且只有/index.php/pagename工作...
    【解决方案2】:

    IIS 不支持 .htaccess 文件,但您可以使用“URL Rewrite”模块来实现相同的漂亮 url。

    这个article(来自 2008 年)描述了它的工作原理。 URL 重写模块在 web platform installer 中可用,因为它是 Microsoft 为 IIS 附加的(不是特定于 Wordpress)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-20
      • 2017-07-27
      • 1970-01-01
      • 2011-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多