Données POST perdues lors de l'utilisation de .htaccess
P粉436410586
P粉436410586 2024-01-10 17:27:52
0
1
416

J'ai ce fichier .htaccess qui effectue des redirections et des réécritures (suppression d'extensions, etc.), mais lorsque j'envoie les données en utilisant la méthode POST, elles se perdent en cours de route.

J'ai essayé d'ajouter cette condition pour empêcher la redirection des requêtes à l'aide des données POST, mais cela ne fonctionne pas.

Options +FollowSymLinks
RewriteEngine  On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^resume-.*/([0-9]+)$ /book.php?id= [QSA,L]


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^channel-books/([0-9]+)/([0-9]+)/([0-9]+)$ /getChannelBooks.php?idChaine=&page=&orderby= [QSA,L]


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^channel-books/([0-9]+)/([a-zA-Z]+)$ /getChannelBooks.php?idChaine=& [QSA,L]


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^chaine-.*/([0-9]+)$ /model_contenu_de_chaine.php?idChaine= [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^search-([0-9]+)$ /search_page.php?search= [QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^audio-([0-9]+)$ /audiobook.php?id= [QSA]

RewriteRule ^$ /index.php [NC]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{THE_REQUEST} \s/([^.]+)\.php [NC]
RewriteRule ^ /%1 [NE,L,R=307]

RewriteRule ^([^\.]+)$ .php [NC]

Voici à quoi ressemble ma demande de publication

Voici le code dans mon fichier destroy_session.php

if(isset($_POST['action']) && $_POST['action'] == 'logout'){
   session_unset("username");
   session_destroy();
}

P粉436410586
P粉436410586

répondre à tous(1)
P粉333395496

C’est le vrai problème ici, cela n’a rien à voir avec la réécriture d’URL.

Si vous envoyez une requête brute comme celle-ci, PHP ne remplira pas $_POST。您需要发送 application/x-www-form-urlencodedmultipart/form-data.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!