Rumah > Soal Jawab > teks badan
Dalam templat galeri foto (CMSMS) saya menggunakan kod berikut:
<ul> {foreach from=$images item=image} {$imagesize=getimagesize($image->file)} <li> name : {$image->file} <em>width :</em> {$imagesize[0]}- <em>height:</em> {$imagesize[1]} </li> {/foreach} </ul>
Setiap kali galeri dimuatkan, dimensi (lebar dan tinggi) hanya beberapa imej diambil, kadangkala kesemuanya. Ia benar-benar rawak dan tidak semestinya imej yang sama. Jelas sekali saya mencuba imej yang berbeza dari sumber yang berbeza.
Saya mendapat ralat gagal Strim Terbuka: Sambungan ditolak. Ctrl+F5 memberi secara rawak
Ini adalah pengehosan kongsi (OVH).
Saya mencipta fail php dan direktori imej (banyak daripadanya) dalam akar tapak web.
<?php function walkDir($path = null) { if(empty($path)) { $d = new DirectoryIterator('./testqdima'); } else { $d = new DirectoryIterator($path); } foreach($d as $f) { if( $f->isFile() && preg_match("/(\.gif|\.png|\.jpe?g)$/", $f->getFilename()) ) { list($w, $h) = getimagesize($f->getPathname()); echo "<p>".$f->getFilename() . " Dimensions: " . $w . ' ' . $h . "</p>"; } elseif($f->isDir() && $f->getFilename() != '.' && $f->getFilename() != '..') { walkDir($f->getPathname()); } } } walkDir(); ?>
Ia berfungsi hebat dan semua imej diproses.
So kalau ada yang pernah hadapi masalah ni sebelum ni...
P粉5150665182023-09-11 11:29:41
Banyak penyedia pengehosan mengenakan had sambungan dan/atau had kadar sambungan (atau serupa) untuk memerangi serangan DDOS (atau atas sebab peruntukan sumber).
Untuk mengehadkan kadar sambungan, ia adalah:
Connection Rate Limit: a number that specifies the number of new connections accepted per second for the virtual server.
Mereka juga mungkin menggunakan kaedah lain untuk mengehadkan bilangan panggilan PHP/panggilan kaedah PHP khusus sesaat.
Untuk kaedah templat, setiap panggilan getimagesize
adalah permintaan berasingan , jadi boleh mencetuskan pendikitan dan mengakibatkan ralat penolakan sambungan
Untuk cara PHP, ia dianggap sebagai satu permintaan, jadi ia akan lulus dengan jayanya.
Saya rasa anda hanya boleh menyelesaikan isu ini dengan bercakap dengan syarikat pengehosan (tetapi mereka mungkin tidak menghiburkan anda kerana mereka masih perlu menyelesaikan kemungkinan DDOS dll), jika tidak, berpegang pada cara PHP anda menghuraikan rekod imej (atau beralih ke pengehosan A yang lain syarikat / menggunakan pelayan khusus)