0

私は、404ページを指すようにApacheを構成したWebサイトで作業していますindex.php

"ErrorDocument 404 /index.php" 

そのため、URL 引数を手動で解析できます。私は現在画像ラッパーを書いているので、例えば

"myssite.com/image/test"

画像は後でデータベースによって管理されるため、サーバー上の画像の物理的な場所をマスクするために、 phpヘッダーが image/jpeg に設定されたテスト画像が表示されます。この画像をphp経由で次のように表示すると:

"echo '<img src="/image/test" alt="some_text">';"

正しく表示されます。これと同じことを JavaScript で行い、ページに挿入すると、404 エラーが発生し、画像が読み込まれません。

404apacheをまったく報告しないようにするか、何らかの方法で JavaScript の処理方法を変更する必要があると思います。助言がありますか?

4

2 に答える 2

0

ヘッダーの応答を理解するために、ページを他の php スクリプトに接続してください

$ch = curl_init('http://myssite.com/image/test'); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
echo $data;

200 ok が返されることを確認してください。

404 が表示される場合、問題はヘッダーにある可能性があります。

そのため、画像へのhtaccessリダイレクトを使用する必要があります

于 2013-01-23T02:37:49.787 に答える
0

404 エラーは、httpd.conf に以下を追加することで修正されました。

<Directory "/var/www">
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php [L]

</Directory>

それは画像が表示されないのを助けませんでしたが、画像を表示する機能を詳しく調べました。画像が表示される前にクロッピング スクリプトを使用すると、ヘッダーに問題が発生する可能性が高くなります。これには、私の側でバックエンドのマイナーな変更が必要になるはずです。

みんな助けてくれてありがとう。

于 2013-01-23T03:11:09.847 に答える