Aktivieren von CORS für Slim PHP Framework in .htaccess
Um Cross-Origin Resource Sharing (CORS) für einen RESTful-Dienst zu aktivieren, der mit erstellt wurde Da es sich um ein schlankes PHP-Framework handelt, werden häufig Änderungen an der .htaccess-Datei verwendet. Wenn jedoch nach der empfohlenen Änderung in .htaccess weiterhin Probleme auftreten, kann ein alternativer Ansatz verwendet werden.
PHP-Header verwenden
Anstatt CORS-Header in .htaccess festzulegen Dies kann direkt im PHP-Code erfolgen, insbesondere in der Datei index.php. Durch Hinzufügen des folgenden Codes am Anfang der Datei werden CORS-Header für jede von der Anwendung empfangene HTTP-Anfrage festgelegt:
<code class="php">// Allow from any origin if (isset($_SERVER['HTTP_ORIGIN'])) { // should do a check here to match $_SERVER['HTTP_ORIGIN'] to a // whitelist of safe domains header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}"); header('Access-Control-Allow-Credentials: true'); header('Access-Control-Max-Age: 86400'); // cache for 1 day } // Access-Control headers are received during OPTIONS requests if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') { if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD'])) header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS"); if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS'])) header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}"); }</code>
Behandlung von OPTIONS-Anfragen
Wenn Sie das SLIM-PHP-Framework verwenden, müssen Sie möglicherweise auch OPTIONS-Anfragen verarbeiten. Fügen Sie dem $app-Objekt die folgende Route hinzu, um sicherzustellen, dass OPTIONS-Anfragen eine HTTP 200-Antwort erhalten:
<code class="php">// return HTTP 200 for HTTP OPTIONS requests $app->map('/:x+', function($x) { http_response_code(200); })->via('OPTIONS');</code>
Diese PHP-Änderungen bieten eine Alternative zum Festlegen von CORS-Headern in .htaccess. Durch Hinzufügen beider Codeblöcke zur Datei index.php können Sie CORS für Ihren SLIM PHP RESTful-Dienst aktivieren.
Das obige ist der detaillierte Inhalt vonWie aktiviere ich CORS für Slim PHP Framework mithilfe von PHP-Headern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!