屏蔽国内IP,访问需要进行身份验证解决思路
屏蔽国内IP,访问需要进行身份验证
有一外贸网站想屏蔽国内IP,但我们自己需要管理和允许特定的国内用户访问所以要进行身份验证,请问这样的功能要怎样实现呢?第一次发帖,请大家多关注!谢谢!
------解决方案--------------------
可以做个页面,在用户访问时,
1.获取用户的IP
2.然后到开放的IP接口去查询用户的地理位置(例如新浪、网易、ip138,都有开放的ip查询接口)
3.有了用户的地理位置,再决定是屏蔽之,还是验证之
------解决方案--------------------
- PHP code
function sina($ip) { $php_runtime = microtime(TRUE); $str = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=".$ip); $tmp = explode(" ",$str); (isset($tmp[4]) && !empty($tmp[4])) ? $location['country'] = $tmp[4] : $location['country'] = null; (isset($tmp[5]) && !empty($tmp[5])) ? $location['city'] = $tmp[5] : $location['city'] = null; (empty($tmp[6]) || !preg_match("/电/",$str) || !preg_match("/通/",$str)) ? $location['sp'] = $tmp[7] : $location['sp'] = $tmp[6]; $location['time'] = microtime(TRUE) - $php_runtime; if(!empty($location)) return $location; else return false; } <br><font color="#e78608">------解决方案--------------------</font><br>通过用户来访的IP地址可以算出该IP属于哪个子网,如110.80.0.0/13<br>将全中国可划分的子网存在一个数组中,判断是否在这个数组中就行了。<br><br>不需要再去其他接口查询地址,然后根据地址或运营商的名字来判断,反而麻烦。<br>PS:这个数组不大,不到800条。<br><br>换算的方法请看此页面:http://url.cn/0TCFrY 内附全中国可划分子网的excel下载<br><br> <br><font color="#e78608">------解决方案--------------------</font><br>ftp://ftp.apnic.net/public/apnic/stats/apnic/delegated-apnic-latest<br><br>apnic|CN|ipv4|180.212.0.0|131072|20091001|allocated<br><br>这就是国内的. 分析提取. 然后过滤IP就可以了 <div class="clear"> </div>

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

AI Hentai Generator
Menjana ai hentai secara percuma.

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

Kebanyakan fail .tmp adalah fail yang ditinggalkan kerana penutupan atau ranap yang tidak normal Cakera calar sementara ini tidak berguna selepas anda memulakan semula komputer, jadi anda boleh memadamkannya dengan selamat. Apabila anda menggunakan sistem pengendalian Windows, anda mungkin sering menemui beberapa fail dengan akhiran TMP dalam direktori akar pemacu C, dan anda juga akan menemui direktori TEMP dalam direktori Windows adalah fail sementara yang dijana oleh pelbagai perisian atau sistem, juga dikenali sebagai fail sampah. Fail sementara yang dijana oleh Windows pada asasnya adalah sama dengan memori maya, kecuali fail sementara lebih disasarkan daripada memori maya dan hanya melayani program tertentu. Dan kekhususannya telah menyebabkan ramai orang baru takut dengannya dan tidak memadamkannya.

Di Linux, tmp merujuk kepada folder yang menyimpan fail sementara Folder ini mengandungi fail sementara yang dibuat oleh sistem dan pengguna had masa lalai folder tmp ialah 30 hari dipadamkan oleh sistem.

Mula-mula, izinkan saya memperkenalkan secara ringkas jenis lokasi dan peraturan pemadanan, menggunakan contoh nginxwiki sebagai contoh: location=/{#matchesthequery/only.[configurationa]}location/{#matchesanyquery,sinceallqueriesbeginwith/,butregular#expressionsandanylongerconventionalblockswillbe#matchedfirst .[ konfigurasib]}lokasi^~/im

Terdapat banyak sampah dalam direktori tmp dalam sistem centos7 Jika anda ingin membersihkan sampah, bagaimanakah anda harus melakukannya? Mari kita lihat tutorial terperinci di bawah. Untuk melihat senarai fail dalam direktori fail tmp, laksanakan perintah cdtmp/ untuk beralih kepada direktori fail semasa tmp, dan laksanakan arahan ll untuk melihat senarai fail dalam direktori semasa. Seperti yang ditunjukkan di bawah. Gunakan arahan rm untuk memadam fail Perlu diingatkan bahawa arahan rm memadam fail dari sistem selama-lamanya, adalah disyorkan apabila menggunakan arahan rm, sebaiknya berikan gesaan sebelum memadam fail. Gunakan arahan rm-i nama fail, tunggu pengguna mengesahkan pemadaman (y) atau langkau pemadaman (n), dan sistem akan melakukan operasi yang sepadan. Seperti yang ditunjukkan di bawah.

Fail "tmp" ialah fail sementara, biasanya dijana oleh sistem pengendalian atau program semasa operasi, dan digunakan untuk menyimpan data sementara atau hasil perantaraan apabila atur cara berjalan. Fail ini digunakan terutamanya untuk membantu program dijalankan dengan lancar, tetapi ia biasanya dipadamkan secara automatik selepas program dilaksanakan. Fail tmp biasanya boleh ditemui dalam direktori akar pemacu C pada sistem Windows. Walau bagaimanapun, fail tmp dikaitkan dengan aplikasi atau sistem tertentu, jadi kandungan dan tujuan khusus mereka mungkin berbeza dari aplikasi ke aplikasi.

tmp ialah fail sementara yang dihasilkan oleh pelbagai perisian atau sistem, yang sering dipanggil fail sampah. Biasanya, program yang mencipta fail sementara memadamkannya apabila ia selesai, tetapi kadangkala fail ini disimpan. Mungkin terdapat banyak sebab mengapa fail sementara dikekalkan: program mungkin terganggu sebelum melengkapkan pemasangan, atau ranap semasa memulakan semula fail ini secara amnya mempunyai sedikit nilai kegunaan, dan kami boleh memadamkannya secara langsung.

Nota: Arahan akar dan akar alias di lokasi hanya menetapkan akar carian ke direktori yang ditetapkan oleh akar, iaitu uri tidak akan dipotong Sebaliknya, uri asal akan digunakan untuk melompat ke direktori untuk mencari fail Arahan aias akan memotong uri yang sepadan, dan kemudian Gunakan laluan yang ditetapkan oleh alias ditambah dengan baki uri sebagai sub-laluan untuk mencari uri proxy_pass di lokasi Jika url proxy_pass tidak mempunyai uri, jika ekornya ialah "/. ", uri yang sepadan akan dipotong. Jika ekornya bukan "/", maka Tidak akan memotong uri yang sepadan jika url proxy_pass mengandungi uri

Artikel ini akan menerangkan secara terperinci bagaimana PHP menentukan sama ada kunci yang ditentukan wujud dalam tatasusunan Editor berpendapat ia sangat praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. PHP menentukan sama ada kunci yang ditentukan wujud dalam tatasusunan: Dalam PHP, terdapat banyak cara untuk menentukan sama ada kunci yang ditentukan wujud dalam tatasusunan: 1. Gunakan fungsi isset(): isset($array["key"]) Fungsi ini mengembalikan nilai Boolean, benar jika kunci yang ditentukan wujud, palsu sebaliknya. 2. Gunakan fungsi array_key_exists(): array_key_exists("key",$arr
