我有一个ajax文件,当某人开始在搜索栏中输入时被调用。我最近一直在清理我的网址,并删除文件扩展名添加尾随斜线,因为那时我的ajax文件似乎不再加载。谁能帮忙?在这里我的htaccess到目前为止ajax文件没有加载,因为后面的斜杠
Options +FollowSymlinks
Options +Indexes
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /[^.#?\ ]+\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^([^.]+)\.php$ /$1 [R=301,L]
我相信RewriteCond只适用于直接在它们下面的规则,所以如果你的AJAX请求是对一个路径有两个目录,并且存在一个目录,这可以解释它。你要做什么地址的AJAX请求,以及它应该访问的实际URL是什么? – 2010-08-28 13:12:27
Ajax请求/include/get-content.php ,这是文件的URL: www.lovelakedistrict.com/include/get-content.php 这是你的意思? – AJFMEDIA 2010-08-28 13:39:07
@ajfmedia - 如果你删除最后一个条件和规则,它是否工作? 301重定向可能会混淆请求,所以如果出现这个问题,就不应该太过难以忽略那些仅针对使用AJAX请求访问的文件的规则。 (但我不想发布与此相关的答案,但不知道这是实际问题) – 2010-08-28 14:08:57