【问题标题】:.htaccess redirect from non existing file.htaccess 从不存在的文件重定向
【发布时间】:2016-08-26 11:40:17
【问题描述】:

我有一个 Wordpress 安装,我正在尝试执行以下操作:

http://domain.com/page.php 重定向到 http://domain.com/page/ 仅当 page.php 确实 NOT 存在。如果是这样,它应该加载 page.php

我在想这样的事情:

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

RewriteRule ^(.*)$ /$1/ [L]

但遗憾的是,它不起作用。还有一些与此类似的规则没有任何效果或返回 500 错误。

【问题讨论】:

    标签: wordpress .htaccess redirect mod-rewrite


    【解决方案1】:

    将此规则作为您的第一条规则:

    RewriteEngine On
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.+)\.(?:html?|php)$ /$1/ [L,NC,R=301]
    

    【讨论】:

    • Worked :) 还有两件事,我应该如何添加 .html f.e.,所以如果 URL 以 page.html 结尾,则应用相同的规则?我能以某种方式保持第二级吗?示例:如果 page.php 不存在,则 domain.com/directory/page.php 需要转到 domain.com/directory/page/。我可能应该编辑我最初的问题,但我不确定。
    • ok 答案也为.html 更新,它确实会将/directory/page.php 重定向到/directory/page/
    猜你喜欢
    • 1970-01-01
    • 2011-08-05
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多