php获取浏览器地址然后防盗链,刷新后便获取不到地址,请教是咋回事
php获取浏览器地址然后防盗链,刷新后便获取不到地址,请问是怎么回事啊
我的x.php代码如下。这个代码的大概意思是:我用一个网站引用另外一个网站的资源。
我的网站是http://www.123.com 和 http://www.abc.com
如果我输入http://www.123.com/x.php/love.mp3,实际上打开的是
http://www.abc.com/abc/love.mp3。下面代码完全可以实现了。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
header("content-Type: text/html; charset=Utf-8");
$SERVER=$_SERVER["REQUEST_URI"];
preg_match("/php\/([\s\S]+)\.mp3/",$SERVER,$url);
$urlname=$url[1];
$downurl='http://www.abc.com/abc/'.$urlname.'.mp3';
header("location:$downurl");
?>
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
网页中的播放器可以正常播放http://www.123.com/x.php/love.mp3
后来我加入了防盗链,防下载,代码:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
header("content-Type: text/html; charset=Utf-8");
$SERVER=$_SERVER["REQUEST_URI"];
preg_match("/php\/([\s\S]+)\.mp3/",$SERVER,$url);
$urlname=$url[1];
$downurl='http://www.abc.com/abc/'.$urlname.'.mp3';
$url = $_SERVER["HTTP_REFERER"]; //获取完整的来路URL
$str = str_replace("http://","",$url); //去掉http://
$strdomain = explode("/",$str); // 以“/”分开成数组
$domain = $strdomain[0]; //取第一个“/”以前的字符
if ($domain=="www.123.com"){
header("location:$downurl");
}
if ($domain==""){
header("location:http://www.123.com/daolian.mp3");
}
if ($domain!="www.123.com"){
header("location:http://www.123.com/daolian.mp3");
}
?>
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
修改完成后,防盗链防下载是实现了,在网页中的播放器播放http://www.123.com/x.php/love.mp3,却播放不了,请问这是代码究竟是什么地方出了问题啊。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Mesej "Organisasi anda memerlukan anda menukar PIN anda" akan muncul pada skrin log masuk. Ini berlaku apabila had tamat tempoh PIN dicapai pada komputer menggunakan tetapan akaun berasaskan organisasi, di mana mereka mempunyai kawalan ke atas peranti peribadi. Walau bagaimanapun, jika anda menyediakan Windows menggunakan akaun peribadi, sebaiknya mesej ralat tidak akan muncul. Walaupun ini tidak selalu berlaku. Kebanyakan pengguna yang mengalami ralat melaporkan menggunakan akaun peribadi mereka. Mengapa organisasi saya meminta saya menukar PIN saya pada Windows 11? Ada kemungkinan akaun anda dikaitkan dengan organisasi dan pendekatan utama anda adalah untuk mengesahkan perkara ini. Menghubungi pentadbir domain anda boleh membantu! Selain itu, tetapan dasar tempatan yang salah konfigurasi atau kunci pendaftaran yang salah boleh menyebabkan ralat. Sekarang ni

Kecerahan skrin adalah bahagian penting dalam menggunakan peranti pengkomputeran moden, terutamanya apabila anda melihat skrin untuk jangka masa yang lama. Ia membantu anda mengurangkan ketegangan mata, meningkatkan kebolehbacaan dan melihat kandungan dengan mudah dan cekap. Walau bagaimanapun, bergantung pada tetapan anda, kadangkala sukar untuk mengurus kecerahan, terutamanya pada Windows 11 dengan perubahan UI baharu. Jika anda menghadapi masalah melaraskan kecerahan, berikut ialah semua cara untuk mengurus kecerahan pada Windows 11. Cara Menukar Kecerahan pada Windows 11 [10 Cara Diterangkan] Pengguna monitor tunggal boleh menggunakan kaedah berikut untuk melaraskan kecerahan pada Windows 11. Ini termasuk sistem desktop menggunakan monitor tunggal serta komputer riba. Jom mulakan. Kaedah 1: Gunakan Pusat Tindakan Pusat Tindakan boleh diakses

Kod status HTTP 520 bermakna pelayan mengalami ralat yang tidak diketahui semasa memproses permintaan dan tidak dapat memberikan maklumat yang lebih khusus. Digunakan untuk menunjukkan bahawa ralat tidak diketahui berlaku semasa pelayan memproses permintaan, yang mungkin disebabkan oleh masalah konfigurasi pelayan, masalah rangkaian atau sebab lain yang tidak diketahui. Ini biasanya disebabkan oleh isu konfigurasi pelayan, isu rangkaian, kelebihan beban pelayan atau ralat pengekodan. Jika anda menghadapi ralat kod status 520, sebaiknya hubungi pentadbir tapak web atau pasukan sokongan teknikal untuk mendapatkan maklumat dan bantuan lanjut.

Skrip pengaktifan terkenal versi MAS2.2 menyokong pengaktifan digital sekali lagi Kaedah ini berasal dari @asdcorp dan pengarang MAS memanggilnya HWID2. Muat turun gatherosstate.exe (bukan asal, diubah suai) daripada https://github.com/massgravel/Microsoft-Activation-Scripts, jalankannya dengan parameter dan jana GenuineTicket.xml. Mula-mula lihat kaedah asal: gatherosstate.exePfn=xxxxxxx;DownlevelGenuineState=1 dan kemudian bandingkan dengan kaedah terkini: gatheros

Dalam iOS 17, Apple memperkenalkan beberapa ciri privasi dan keselamatan baharu kepada sistem pengendalian mudah alihnya, salah satunya adalah keupayaan untuk memerlukan pengesahan dua faktor untuk tab penyemakan imbas peribadi dalam Safari. Begini cara ia berfungsi dan cara mematikannya. Pada iPhone atau iPad yang menjalankan iOS 17 atau iPadOS 17, penyemak imbas Apple kini memerlukan pengesahan Face ID/Touch ID atau kod laluan jika anda mempunyai sebarang tab Penyemakan Imbas Peribadi terbuka di Safari dan kemudian keluar dari sesi atau apl untuk mengaksesnya semula. Dalam erti kata lain, jika seseorang mendapatkan iPhone atau iPad anda semasa ia dibuka kunci, mereka masih tidak akan dapat melihat privasi anda tanpa mengetahui kod laluan anda

Untuk mengetahui lebih lanjut tentang sumber terbuka, sila lawati: Komuniti Pembangun 51CTO Hongmeng https://ost.51cto.com Persekitaran berjalan DAYU200:4.0.10.16SDK: 4.0.10.15IDE: 4.0.600 1. Untuk membuat aplikasi, klik Fail- >newFile->CreateProgect. Pilih templat: [OpenHarmony] EmptyAbility: Isikan nama projek, shici, nama pakej aplikasi com.nut.shici dan lokasi storan aplikasi XXX (tiada bahasa Cina, aksara khas atau ruang). CompileSDK10, Model: Stage. Peranti
![Cara Menyembunyikan dan Menyahsembunyikan Folder pada Windows 11 [3 Cara]](https://img.php.cn/upload/article/000/887/227/169542942766265.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
Menyembunyikan folder ialah cara terbaik untuk memastikan desktop anda teratur. Mungkin anda ingin menyimpan fail peribadi anda atau beberapa butiran pelanggan daripada mengintip. Walau apa pun, keupayaan untuk menyimpannya dan menyorokkannya apabila perlu adalah penjimatan yang besar. Ringkasnya, fail tersembunyi ini tidak akan muncul dalam menu utama, tetapi ia masih boleh diakses. Ia sangat mudah dan tidak perlu mengambil terlalu banyak masa. Bagaimana untuk menyembunyikan folder dalam Windows 11? 1. Gunakan File Explorer dan tekan kekunci + untuk membuka File Explorer. WindowsE Cari folder yang ingin anda sembunyikan, klik kanan padanya dan pilih Properties. Navigasi ke tab Umum, tandai kotak Sembunyikan, klik Guna, dan kemudian klik OK. Dalam kotak dialog seterusnya, tandai Gunakan perubahan pada folder ini, sub-fail

WindowsServerBackup ialah fungsi yang disertakan dengan sistem pengendalian WindowsServer, direka untuk membantu pengguna melindungi data penting dan konfigurasi sistem, serta menyediakan penyelesaian sandaran dan pemulihan yang lengkap untuk perusahaan peringkat kecil, sederhana dan perusahaan. Hanya pengguna yang menjalankan Server2022 dan lebih tinggi boleh menggunakan ciri ini. Dalam artikel ini, kami akan menerangkan cara memasang, menyahpasang atau menetapkan semula WindowsServerBackup. Cara Menetapkan Semula Sandaran Pelayan Windows Jika anda mengalami masalah dengan sandaran pelayan anda, sandaran mengambil masa terlalu lama, atau anda tidak dapat mengakses fail yang disimpan, maka anda boleh mempertimbangkan untuk menetapkan semula tetapan sandaran Pelayan Windows anda. Untuk menetapkan semula Windows
