问题:图片加载速度太慢
P粉676821490
2023-08-17 22:40:08
<p>我使用Html、Css、Js、Php制作了一个类似craiglist的网站。
当用户点击上传大于1mb的图片时,页面变得非常慢或者失败(503错误)。小于100kb的图片没有问题。</p>
<ol>
<li>一个php页面上有一个带有type=file输入标签和预览img标签的表单。> 这里没有问题。</li>
<li>当用户点击提交按钮时,表单将输入标签的值传递给另一个php页面,该页面包含上传代码。</li>
</ol>
<p>问题:在上传到服务器之前,最好的图片缩放方法是什么?
与Craigslist相比,我的网站上传图片非常慢或者失败。
如何使上传速度更快?</p>
<pre class="brush:php;toolbar:false;">https://www.mimarketa.com/mmMain/mmEnglish/mmPostAd.php?country=US&county=Lewis&state=WA&adCity=All_Cities&category=ALL</pre>
<p>我尝试在这里和谷歌上搜索答案。</p>
<p>PHP页面1:输入文件标签和图像预览标签。JS通过绘制方法进行缩放。</p>
<p>PHP页面2的代码:</p>
<pre class="brush:php;toolbar:false;">$upload_dir = "mmAdPics/";
$file1 = $upload_dir . rand() . ".png";
$picUrl1='https://www.mimarketa.com/mmMain/mmEnglish/'.$file1;
$img1 = $_POST['hidden_data1'];
$img1 = str_replace('data:image/png;base64,', '', $img1);
$img1 = str_replace(' ', '+', $img1);
$data1 = base64_decode($img1);
$success = file_put_contents($file1, $data1);
print $success ? $file1 : '无法保存文件1。';</pre>
<p><br /></p>
请查看:https://www.php.net/manual/en/book.imagick.php
具体来说,调整图像大小。此外,503错误很可能是由于服务器超时导致的。您可以在服务器端增加超时时间,或者在客户端限制上传文件的大小。