【问题标题】:.htaccess redirect does not take place.htaccess 重定向不发生
【发布时间】:2016-02-29 06:02:53
【问题描述】:

我有一个动态 JavaScript 链接:

https://example.com/~scale/playground/[my dynamic value]

我在 JavaScript 中生成这个值。单击此链接后,它会在我的数据库中查找 [my dynamic value] 并重定向到上述值的 url。

我的 .htaccess 看起来像这样:

RewriteBase /playground/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?id=$1 [L]

但点击链接时会显示 404 错误。为什么我的 .htaccess 不起作用?

【问题讨论】:

  • 您只匹配符合匹配规则的单词,没有点、斜杠或其他任何内容。它只会匹配一个单词。
  • 可能是你忘记开启重写引擎了?

标签: javascript php .htaccess http-status-code-404


【解决方案1】:

看看这个。我希望你能得到一个想法

# RewriteBase equivalent - Production
RewriteCond %{HTTP_HOST} !^localhost$
RewriteRule . - [E=REWRITEBASE:/]

# RewriteBase equivalent - Development
RewriteCond %{HTTP_HOST} ^xx\.xx\.xx\.xx$
RewriteRule . - [E=REWRITEBASE:/~countryr/]


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/-]+)/?$ %{ENV:REWRITEBASE}page.php?pid=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ %{ENV:REWRITEBASE}blog-detail.php?url=$1 [QSA,L]

【讨论】:

    猜你喜欢
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    • 2014-01-28
    • 2014-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-11
    相关资源
    最近更新 更多