1

我的 .htaccess 文件中有以下内容:

Options +FollowSymLinks
RewriteEngine On
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d

RewriteRule ^api api.php [QSA,L]

我可以浏览到就好了 - 两者/api和类似的东西/api/5

但是,当我尝试通过骨干网访问 url 时,出现 404 错误。真的不知道该去哪里...

4

1 回答 1

1

一些想法:

  1. 当您说“我尝试通过骨干网访问网址”时,您确定请求的是正确的网址吗?我可以假设您知道自己在做什么,并且确实通过 Firebug、Chrome Inspector 检查了请求是否与您所说的相同,但是您对为什么会发生这种情况一无所知这一事实使我想明确基线事实。
  2. 您的重写规则之前是否有任何RewriteCond可能使 url 仅针对某些请求重写?也许您不小心包含了一些条件,这意味着 ajax 请求不会被重写(ajax 请求通常可以通过一些请求标头识别)。
  3. Backbone.js 确实使用了PUT/ DELETEhttp 动词,这在某些 http 服务器上可能会出现问题,而无需对您的网站进行额外配置。我假设您正在使用 Apache,因为您提到了 .htaccess ——有一个工具可以将 .htaccess 与 IIS 一起使用,但您没有提到它。但是您似乎甚至没有GET任何数据成功。
于 2012-11-04T15:34:06.413 回答