ファイルに何を入れるか教えてください.htaccess
。
サーバーにPNG、GIF、JPG画像がありますhttp://domain.tld/images/anyimage.anyextension
のように URL をより親しみやすくしたいhttp://domain.tld/anyimage.anyextension
これは私が今持っています。最初の 2 つの文字列は、前述のようにリンクを変更します。しかし、最後の文字列はサーバーに対して元に戻りません。
RewriteCond %{REQUEST_URI} ^/images/(.+)(\.gif|\.jpg|\.png)$ [NC]
RewriteRule ^image/(.+)$ /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.+)$ /images/$1 [L]
追加すると
RewriteCond %{REQUEST_URI} ^/([^/.]+\.(png|gif|jpg))$ [NC]
RewriteCond %{DOCUMENT_ROOT}/image/%1 -f
RewriteRule ^([^/.]+\.(png|gif|jpg))$ /image/$1 [L,NC]
前のクエリ文字列ルールの直後に、画像が開かない。それ以前なら問題ありません。それは何でしょうか?それを修正する方法はありますか?最後の文字列RewriteRule ^/?(.+)$ /?$1 [L]
がこの競合を引き起こします
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?([^\ ]+) [NC]
RewriteRule ^$ /%1? [R=301,L]
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?(.+)$ /?$1 [L]