1

私はこれを作ろうとしました:

  • PCからbase64文字列として写真をアップロードします( "data:image / jpeg; base64、...")
  • PHPは、この写真を.jpgとして完全な解像度で保存し、160x160.pngサムネイルを作成します
  • 次に、フルサイズの画像へのリンクが返され、ユーザーはJcopを使用してこの写真をトリミングし、ユーザーが確認すると自動的に寸法を送信します

私はこれをかなり遠くまで行っており、ローカルのApacheで正常に動作します。しかし、それをリモートWebホスティングに移動すると(シェルにアクセスできません)、最初のajaxリクエスト(ユーザーが写真を送信したとき)は401Unauthorizedを返します。間違ったファイルのアクセス許可を検索しましたが、photo.phpのアクセス許可に問題があるのか​​、アップロードされた画像のアクセス許可に問題があるのか​​わかりません。すべてのディレクトリに0650を設定しました。

キャプチャされたリクエスト: http: //netbox.wayo.cz/401unauthorized.PNG

写真を保存するコードは次のとおりです。

if($image = imagecreatefromstring($content))
{
     // save full-size photo
     if($photo = imagejpeg($image,$file_path,$control->get_config('upload_photo_quality')))
     {  
        // get photo params
        list($width,$height,$type,$attr) = getimagesize($file_path);

        // create photo thumbnail
        $thumb_name = uniqid().'.png';
        $thumb_path = DIR_DATA.'thumbs/'.$thumb_name;
        imagepng($image,$thumb_path,$control->get_config('upload_photo_compression'));
4

1 に答える 1

0

654を設定する必要があります。650では、PHPを要求した場合、パブリックユーザーはディレクトリと内部ファイルにアクセスできません。ユーザーがPHPファイルを実行できるように655を設定する必要があります。

于 2013-02-05T21:09:31.010 に答える