代码之家  ›  专栏  ›  技术社区  ›  jbeard4

如何修改.htaccess以在已经承载WordPress安装的站点的特定位置公开文件?

  •  0
  • jbeard4  · 技术社区  · 14 年前

    我同意为一个在线社区托管一个文件,但后来我改变了我的网站,让它现在托管一个WordPress博客。我想要的是不要破坏这个文件的现有URL,例如,当人们导航到文件所在的URL时,比如myblog.com/path/to/file,我希望Apache处理URL而不是WordPress,这样文件系统上的文件就可以被传递,而不是WordPress“我们找不到文章”页面。我认为这样做的方法是修改.htaccess,这样特定的url myblog.com/path/to/file就不会执行index.php。现在,我的.htaccess文件如下所示:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress
    

    有人能告诉我如何修改.htaccess以取消对一个文件的URL管理,但对所有其他URL执行index.php吗?

    任何指导都将不胜感激。谢谢。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Marc B    14 年前

    这些规则

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    

    会告诉mod eu rewrite跳过任何实际存在的文件或目录。只要你不移动你的这个特殊文件,那么mod重写就不会把重写重定向到main index.php。

    现在,如果您要将文件移到其他地方,但要保留旧的URL,那么您必须按照Toscho在回答中所说的做重定向。

        2
  •  1
  •   fuxia    14 年前
    Redirect permanent /old/path/to/file /new/path/to/file
    # BEGIN WordPress ...