[英]Apache mod_rewrite and regular expression
在我的HTML中,我想像這樣引用我的圖像:
/images/articles/this-is-the-page-title-dgj4klci5j4.jpg
/images/articles/thumbs/this-is-the-page-title-dgj4klci5j4.jpg
/images/gallery/this-is-the-page-title-qj3k56l6kfm.jpg
但他們真的位於:
/_pics/articles/dgj4klci5j4.jpg
/_pics/articles/thumbs/dgj4klci5j4.jpg
/_pics/gallery/qj3k56l6kfm.jpg
我的.htaccess文件當前位於站點的根目錄中,看起來像這樣:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^website\.com [NC]
RewriteRule ^(.*)$ http://www.website.com/$1 [R=permanent,L]
RewriteRule ^articles/ user/articles.php [L]
RewriteRule ^gallery/ info/gallery.php [L]
我必須這樣做,因為在最后一刻,客戶決定他想要更清晰的圖像文件名,這似乎是一個快速合理的解決方案。
我想我可以將所有內容從/ images重定向到/ _pics並通過使用mod_rewrite取出頁面標題。 問題是我對正則表達式不是很好,我不完全理解mod_rewrite的工作方式。 我可以得到一些幫助嗎? 謝謝
真實圖像文件名只包含字母和數字,可以是jpg或png。
嘗試在htaccess文件中添加此規則:
RewriteRule ^images/(.+)/[^/]+-([^/-]+)\.(jpe?g|gif|png)$ /_pics/$1/$2.$3 [L]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.