1

私はこれがウェブを検索することに対する解決策を見つけられませんでした。

example.com/images/に保存されている画像をホストするサイト(example.comと呼びます)があります。

ユーザーがアドレスexample.com/imagenameにアクセスして、example.com / images/imagename.jpgの画像にアクセスできるようにします。

イメージ名は、az、AZ、0-9、-、および_で構成されます。

解決策に感謝します!

4

1 に答える 1

1

メインのApache設定(.htaccessではない):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/images/%{REQUEST_URI}.jpg -f
RewriteRule ^/([a-zA-Z0-9_-]+)$ /images/$1.jpg

つまり、「パターンが必要な形式に一致する場合、パスがファイルではない場合、パスがディレクトリではない場合、およびドキュメントルートの下のimagesフォルダに「.jpg」を持つファイルがある場合追加してからリダイレクトを実行します」。

.htaccessで実行している場合は、次のものを置き換えることができるはずです。

RewriteRule ^/([a-zA-Z0-9_-]+)$ /images/$1.jpg

RewriteRule ^([a-zA-Z0-9_-]+)$ /images/$1.jpg

しかし、私はそれをテストする機会がありませんでした(私は仮想プライベートサーバーを持っていて、.htaccessを有効にしません。それを管理しているのは私だけであり、リクエストのオーバーヘッドを減らすからです)

于 2012-05-20T19:59:58.883 に答える