【问题标题】:URL rewriting - Prestashop [closed]URL 重写 - Prestashop [关闭]
【发布时间】:2021-02-25 22:33:04
【问题描述】:

我在使用 NGINX 的网络服务器上运行 Prestashop 时遇到问题。 我无法让 Web 服务正常工作…… Web 服务本身可以工作,并且测试正常。 但是当我尝试访问domain.com/api/ 时,我收到重定向错误。 它应该将请求传递给这个 url:/webservice/dispatcher.php

htaccess 文件包含这些行,但我认为这里有问题。

RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api$ api/ [L]
RewriteRule ^api/(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]

谁能告诉我如何解决这个问题?

【问题讨论】:

  • 除非您将当前的 nginx 配置包含在您的问题中,否则我怀疑任何人都可以帮助您。
  • 我只能访问运行该站点的 Plesk 服务器...我不确定在哪里可以找到这些信息?
  • 我不知道。我认为这是您的托管支持而不是 SO 社区的问题。
  • "with NGINX" - Nginx 在哪里适合? .htaccess 显然是 Apache 的一部分。你到底得到了什么“重定向错误”?您发布的代码中没有(外部)“重定向”? .htaccess 文件在哪里?您还有哪些其他指令?

标签: apache .htaccess nginx url-rewriting prestashop


【解决方案1】:

找到解决方案... 而不是这 3 行,我得到了它与这 2 行一起工作。:

RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api(?:/(.*))?$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]

【讨论】:

  • 感谢您的反馈。不过好奇的是,这 3 行的最终结果应该是相同的(只是效率稍低一些),除非...您将 RewriteBase 指令设置为根以外的其他内容,或者与现有指令存在其他冲突?
猜你喜欢
  • 1970-01-01
  • 2013-12-01
  • 2021-03-22
  • 1970-01-01
  • 2012-01-12
  • 2015-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多