Rumah >pembangunan bahagian belakang >tutorial php >Pengesahan Keselamatan PHP dengan Firebase Hosting
Pengesahan Keselamatan PHP dengan Firebase Hosting
Ikhtisar:
Firebase Hosting ialah perkhidmatan pengehosan halaman web statik yang disediakan oleh Google yang boleh mengehoskan aplikasi bahagian hadapan dengan mudah. Walau bagaimanapun, untuk tapak web yang memerlukan pemprosesan dinamik, seperti tapak web PHP yang memerlukan log masuk pengguna dan pengesahan kebenaran, Firebase Hosting sahaja tidak dapat memenuhi keperluan. Artikel ini menerangkan cara menggunakan PHP untuk pengesahan selamat dalam Firebase Hosting, memastikan bahawa hanya pengguna yang disahkan boleh mengakses data sensitif.
Langkah:
firebase init functions
. Dalam fail index.js
yang dihasilkan, tambahkan kod berikut: firebase init functions
命令初始化 Firebase Cloud Functions。在生成的 index.js
文件中,添加以下代码:const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(); exports.authenticatedRequest = functions.https.onRequest((req, res) => { const key = req.query.key; if (key !== 'YOUR_SECRET_KEY') { return res.status(403).send('Forbidden'); } // 进行自定义的权限验证逻辑 // ... // 返回需要进行身份验证的数据 res.send('Authenticated data'); });
auth.php
的 PHP 文件,用于实现验证逻辑。以下是一个示例代码:<?php $key = "YOUR_SECRET_KEY"; $url = "https://us-central1-YOUR_PROJECT_ID.cloudfunctions.net/authenticatedRequest?key=".$key; // 如果请求带有 cookie,并且 cookie 中包含用户的身份信息 if(isset($_COOKIE['uid'])) { // 验证用户身份,例如从数据库中查询用户信息 $uid = $_COOKIE['uid']; $result = // 验证逻辑 if ($result === true) { // 身份验证通过,发送 GET 请求获取数据 $data = file_get_contents($url); echo $data; exit; } } // 身份验证未通过,跳转到登录页面 header("Location: login.php");
firebase.json
配置文件中,添加以下配置:{ "hosting": { "rewrites": [ { "source": "**", "function": "authenticatedRequest" } ] } }
firebase deploy
Buat fail bernama auth dalam direktori Firebase Cloud Functions .php
Fail PHP digunakan untuk melaksanakan logik pengesahan. Berikut ialah contoh kod:
firebase.json
Firebase Hosting, tambahkan konfigurasi berikut: 🎜🎜rrreeefirebase deploy
pada terminal untuk menggunakan fail PHP ke Firebase Hosting. Kemudian, lawati tapak web yang dihoskan oleh Firebase Hosting untuk melihat sama ada pengesahan keselamatan PHP telah berjaya dilaksanakan. 🎜🎜🎜Ringkasan: 🎜Melalui langkah di atas, kami berjaya melaksanakan pengesahan keselamatan PHP dalam Firebase Hosting. Dalam Firebase Cloud Functions, kami menyediakan fungsi yang hanya menerima kunci khusus untuk mengendalikan permintaan yang memerlukan pengesahan. Kemudian, dalam fail PHP, kami mengesahkan pengguna, menghantar permintaan GET kepada Firebase Cloud Functions untuk mendapatkan data dan mengubah hala pengguna yang tidak disahkan. Dengan cara ini, kami boleh melaksanakan tapak web PHP yang selamat dan memastikan bahawa hanya pengguna yang disahkan boleh mengakses data sensitif. 🎜Atas ialah kandungan terperinci Pengesahan Keselamatan PHP dengan Firebase Hosting. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!