みなさん、
私は Codeigneter で遊んでいて、楽しみのためにある種のフォト アルバムを作成しようとしています (実際に始める前に、codeigneter をよりよく理解するため)。
ここでテスト Web サイトをセットアップしました: http://foal.scriptsenprogs.nl/
ここで重要なのは、ユーザーが将来画像をアップロードできることです。そして、その画像を何らかの形で保存したい...
したがって、誰かがこのリンクを使用する場合: http://foal.scriptsenprogs.nl/media/img/albums/1.png
ブロックする必要があります(現在のように)。
/media/img/albums
フォルダーに配置された .htacces ファイルにこのコード行があります
<Directory "http://foal.scriptsenprogs.nl/media/img/albums" >
Options Includes
AllowOverride All
Order allow,deny
Deny from All
</Directory>
私は .htaccess ファイルに関するノウハウがほとんどないことを告白しなければなりませんが、これはうまくいくようです (直接の URL はブロックされています)。
私の codeIgneter コードでは、これを使用して Web ページに画像を追加します。
$str .= '<div style="margin-top:20px;"><img width="200px" src="./media/img/albums/' . $imageStuff[$row['album_id']] -> img_id . '.' . $imageStuff[$row['album_id']] -> img_type . '" /></div>';
そして、.htaccess ファイルの前は機能していました。しかし、今は機能していません。
Chromes エラー コンソールを確認すると、次のエラーが表示されます。
GET http://foal.scriptsenprogs.nl/media/img/albums/1.png 404 (Not Found) foal.scriptsenprogs.nl:48
だから、404 Not Found
それはエラーです。しかし、URL を確認すると、それが絶対 URL に与えられていることがわかりますか? しかし、相対 URL を挿入しましたよね?
これを修正する方法について何か考えはありますか?
EDIT 1 サブドメインのウェブルートに、次の .htaccess ファイルがあります。
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|school|media|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
編集2 質問をもっと明確にするために...
Web サイト ( http://foal.scriptsenprogs.nl/ ) の場合、相対パスを使用して画像を表示できるようにする必要があります。(このように<img width="200px" src="./media/img/albums/1.png" />
:)
ただし、絶対パスを介して画像にアクセスしようとする場合は、ブロックする必要があります (リンクは次のようになります: http://foal.scriptsenprogs.nl/media/img/albums/1.png )