Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengalihkan Data POST ke Alamat Berbeza dengan ProxyPass dalam Apache?

Bagaimana untuk Mengalihkan Data POST ke Alamat Berbeza dengan ProxyPass dalam Apache?

Patricia Arquette
Patricia Arquetteasal
2024-11-19 02:56:02191semak imbas

How to Redirect POST Data to a Different Address with ProxyPass in Apache?

Mengubah hala Data POST dengan ProxyPass

Ia adalah mungkin untuk mengubah hala data POST ke alamat lain melalui konfigurasi pelayan. Begini cara untuk mencapainya menggunakan ProxyPass dalam fail .htaccess Apache:

1. Konfigurasikan .htaccess:

Dalam fail .htaccess yang terletak dalam direktori akar tapak web, tambah peraturan berikut:

# Redirect mail posting to index.php
RewriteRule send-mail index.php?send-mail [NC,P]
  • [NC] bermakna peraturan tidak peka huruf besar dan kecil.
  • [P] mengekalkan data POST dan menghantarnya kepada skrip yang diminta.

2. Dayakan ProxyPass:

Pastikan modul ProxyPass didayakan dalam konfigurasi pelayan anda. Ini boleh dilakukan dengan menambah baris berikut pada fail konfigurasi Apache (biasanya httpd.conf):

LoadModule proxy_module modules/mod_proxy.so

3. Edit Tindakan Borang:

Tukar atribut tindakan borang kepada alamat palsu yang digunakan dalam peraturan ubah hala:

<form action="/send-mail" method="post">

4. Kendalikan Data POST dalam index.php:

Dalam skrip index.php anda, gunakan fungsi parse_str() untuk mengekstrak data POST daripada pembolehubah QUERY_STRING:

parse_str($_SERVER['QUERY_STRING'], $_POST);

Ini akan jadikan data POST tersedia untuk skrip PHP anda, walaupun permintaan sedang diubah hala.

Atas ialah kandungan terperinci Bagaimana untuk Mengalihkan Data POST ke Alamat Berbeza dengan ProxyPass dalam Apache?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn