我创建了一个用于计算成本的wordpress插件。该表单只有一个输入字段和一个提交按钮。在提交表单时,我想创建一个ajax请求。因此,我调用了/wp-admin/admin-ajax.php- Url,但得到了禁止错误代码403。我认为htaccess中的条目是错误的,但在更改文件并重新启动服务器后,我得到了相同的错误。
你知道这是怎么回事吗?
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# admin-ajax.php & post.php skip/bypass rule
RewriteCond %{REQUEST_URI} (admin-ajax\.php|post\.php) [NC]
RewriteRule . - [S=2]
</IfModule>
# END WordPress发布于 2019-09-12 22:48:39
如果你没有声明允许ajax调用,它会给出403禁止的错误。
//allow this particular AJAX function for logged in users
add_action('wp_ajax_myajax', 'myajax');
//allow this particular AJAX function for non-logged in users
add_action('wp_ajax_nopriv_myajax', 'myajax');
function myajax() {
//your code
}发布于 2021-07-14 03:08:34
对我起作用的是在服务器上禁用mod sec!
https://stackoverflow.com/questions/57896299
复制相似问题