从用于AJAX的URL中删除.php文件扩展名


Removing .php file extension from URL meant to be used with AJAX

我正在制作一个小应用程序,它将有一个小的AJAX提交URL。它是用PHP制作的,URL是blah/ajax/submit.php。我希望路由是blah/ajax/submit,没有php文件扩展名。我无法使用htaccess,也无法删除php扩展名,或者将submit.php重命名为index.php并将其放在blah/ajax/submit目录中。有没有一种方法可以在没有大型库或框架的情况下实现我的要求?我打算在未来使用Laravel或Django,但目前,我需要一个可以在几分钟内启动并运行的解决方案。

确保调用/ajax/submit,然后将这些规则添加到文档根目录中的htaccess文件:

RewriteRule ^/ajax/submit$ /ajax/submit.php [L]

或者,将其添加到/ajax/目录中的htaccess文件中:

RewriteBase /ajax/
RewriteRule ^submit$ submit.php [L]

使用这种方式。。。让我们知道它是否有效!

RewriteEngine On
RewriteRule ^([^/]*)'.*$ ./submit.php [L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ ./submit.php

将其保存为.htaccess,并将其放入/ajax/文件夹中。

DOCUMENT_ROOT/.htaccess文件中尝试此代码:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

我对所提出的解决方案一直有不同类型的错误和问题,但我找到了一种通过使用最低限度的路由器来解决我的问题的方法:

http://toroweb.org/

感谢大家教我.htaccess