403 Interdit sur le formulaire de promotion spécifique Contenu du POST

10

J'obtiens 403 réponses interdites lorsque j'essaie d'enregistrer les modifications apportées à une règle de prix de panier existante. Il ne se produit que dans la condition suivante:

  • Ajout de plus de 3 conditions à la règle

Pour le contexte, j'essaie d'ajouter 5 conditions à la règle, toutes structurées comme suit:

ANY = TRUE:
  IF FOUND WITH ANY = TRUE:
    SKU = X
    SKU = X
    SKU = X

Si j'essaie d'ajouter une quatrième SKU = Xcondition et d'enregistrer la règle, j'obtiens une erreur interdite 403.

Ce que je sais:

  • Cela ne peut être reproduit qu'à la production (pas de dev / staging)
  • Je peux définir avec succès 3 SKU = Xconditions ou moins avec toutes les valeurs
  • Je peux ajouter avec succès n'importe quel autre type de condition avec n'importe quelle valeur
  • Cela se produit avant preDispatch, donc aucune redirection / transfert n'est impliqué
  • Le /.htaccessfichier est essentiellement stock (pas de réécriture)

Quelqu'un a-t-il vécu cela ou quelque chose de similaire avant?

Rick Buczynski
la source
Je peux seulement dire que j'ai rencontré des problèmes avec l'ajout de grandes conditions d'arbres. Et il semblait que quelque chose n'allait pas (les options n'étaient pas enregistrées, certaines d'entre elles étaient manquées). (cela s'est produit sur Clean Magento). Je n'ai pas vu le problème, je viens de supprimer la règle existante et d'en créer une nouvelle.
zhartaunik
@zhartaunik Vos conseils m'ont donné de l'espoir, mais pas de chance :) J'ai créé la règle à partir de zéro avec les mêmes données, y compris mes 4e et 5e conditions, et j'ai eu la même erreur. Si je n'ai que 3 conditions, il enregistre avec succès.
Rick Buczynski
1
Votre serveur a-t-il des modifications rares, telles que l'utilisation de mod_security?
Agop
Bonne question, il semble que cela pourrait être le cas, mais j'ai un accès limité au serveur de production (dev sous-traité) et je ne peux pas stat la configuration du serveur web. Je peux voir mod_security.conf mais je ne peux pas confirmer qu'il est utilisé. Je vais y jeter un œil. Merci @Agop.
Rick Buczynski
Que diriez-vous d'ajouter la condition directement dans la base de données?
kiatng

Réponses:

1

Résolu le problème. @Agop a eu la bonne idée d'étudier les paramètres de mod_security. Dans mon cas, je n'ai pas pu les contrôler et j'ai dû m'en remettre à l'hébergeur.

Il s'avère que l'hôte (Nexcess) peut avoir des paramètres de sécurité serrés. Ils y font même allusion dans leur propre blog d'il y a quelques années:

https://blog.nexcess.net/2012/09/14/mod_security-and-content-management-systems/

En modifiant certains paramètres du compte, les erreurs 403 disparaissent (je ne pouvais pas savoir quels paramètres - si je le découvre, je les publierai ici).

Rick Buczynski
la source