Php Ajax无法使用此.htaccess
我正在用PHP和MVC开发一个CMS。我有以下权限:Php Ajax无法使用此.htaccess,php,.htaccess,jquery,url-rewriting,permalinks,Php,.htaccess,Jquery,Url Rewriting,Permalinks,我正在用PHP和MVC开发一个CMS。我有以下权限: <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> 我试过: “./aj
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我试过:
“./ajax/login.php”
路径+视图+主题+“/ajax/login.php”
我的文件夹结构是:
view
themes
standar
ajax
login.php
js
ajaxInteractions.js
index.phtml
如评论中所述,您需要检查您的路径,或仅使用以下绝对路径:
$.post
(
"/view/themes/standar/ajax/login.php",
{
u:Base64.encode(user),
p:Base64.encode(password),
},
function(data)
{
},
"json"
);
还有一件事;像这样分散代码并不总是最佳做法(这对于PHP和普通JS调用很好)。对于这些类型的呼叫,请尽量使其更加集中:
$.post( "/view/themes/standar/ajax/login.php", {
u:Base64.encode(user),
p:Base64.encode(password),
}, function(data) {
/** do your stuff **/
}, "json" );
如评论中所述,您需要检查您的路径,或仅使用以下绝对路径:
$.post
(
"/view/themes/standar/ajax/login.php",
{
u:Base64.encode(user),
p:Base64.encode(password),
},
function(data)
{
},
"json"
);
还有一件事;像这样分散代码并不总是最佳做法(这对于PHP和普通JS调用很好)。对于这些类型的呼叫,请尽量使其更加集中:
$.post( "/view/themes/standar/ajax/login.php", {
u:Base64.encode(user),
p:Base64.encode(password),
}, function(data) {
/** do your stuff **/
}, "json" );
我想我们必须看到你的javascript。显示你的ajax调用,但最有可能的是,你需要添加一个
/
,或者更具体地检查你的ajax调用路径。同意@DainisTools…另外,最好直接在新的浏览器窗口中输入ajax URL。然后你可以检查发生了什么。小心相对URL-浏览器从父页面的URL(这是虚拟的,可以包含将放在JS前面的文件夹)组合它们。这会破坏功能我希望你不是Base64编码,因为你认为它是安全的…密码应该只通过加密通道(https)发送。是一个内部CMS,我只使用Base64通过post进行通信。我想我们必须看到你的javascript。显示你的ajax调用,但很可能,您需要添加一个/
或更具体地检查您的ajax调用路径。同意@DainisAbols…另外,将ajax URL直接输入新的浏览器窗口也是一个好主意。然后你可以检查发生了什么。小心相对URL-浏览器从父页面的URL(这是虚拟的,可以包含将放在JS前面的文件夹)组合它们。这会破坏功能我希望你不是Base64编码,因为你认为它是安全的…密码只能通过加密通道(https)发送。是一个内部CMS用于工作,我只使用Base64通过post进行通信。问题是htaccess,使用该.htaccess所有url或url指向的路径,转到域根目录下的index.php。如果直接指向某个文件,则不会。如果找不到其他有效的url,它会将所有内容重定向到index.php
。谢谢,它很管用。我正在测试你的代码,我的folfer名为standar,whithout,但现在可以工作了。问题是htaccess,有了它。htaccess你用url指向的所有url或路径都指向域根目录上的index.php。如果你直接指向某个文件,则不会。如果找不到其他有效的url,它会将所有内容重定向到index.php
。谢谢,它很管用。我在测试你的代码,我知道folfer叫standar,虽然没有,但现在可以工作了。