【问题标题】:how to rewrite example.com/abc.html to example.com/abc如何将 example.com/abc.html 重写为 example.com/abc
【发布时间】:2022-01-02 18:51:39
【问题描述】:

我正在尝试下面的代码,但不适合我

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html

【问题讨论】:

  • 这和 PHP 有什么关系?
  • 似乎对我有用..
  • 请解释您所说的“不工作”是什么意思。此代码与您在标题中所述相反。但是,您不应该将/abc.html“重写”为/abc。
  • 我的意思是我需要打开 mdaziz.co.in/abc.html 但我希望 URL 应该是 mdaziz.co.in/abc 这个。我使用上面的代码修复但没有得到解决方案,你能帮忙吗?
  • 是的,上面的代码已经做到了。当您请求 URL /abc 时,上述规则在内部将请求重写为 /abc.html,然后提供服务。你是在暗示这不会发生吗?或者您是否希望您的 URL 在您的 HTML 源代码中神奇地从 /abc.html 更改为 /abc?因为它没有这样做,如果这是您所期望的?

标签: apache .htaccess mod-rewrite


【解决方案1】:

简单的解决方案,在 Apache 中启用 MultiViews。

MultiViews 隐藏 URL 中的文件扩展名。

<Directory "/folder/subfolder/subfolder">

    Options +MultiViews 

</Directory>

【讨论】:

    猜你喜欢
    • 2019-01-27
    • 1970-01-01
    • 1970-01-01
    • 2014-03-04
    • 1970-01-01
    • 2020-06-20
    • 2011-02-28
    • 1970-01-01
    • 2019-05-18
    相关资源
    最近更新 更多