CodeIgniter Forums
Apache Rewrite if image doesn't exist - Printable Version

+- CodeIgniter Forums (
+-- Forum: Using CodeIgniter (
+--- Forum: General Help (
+--- Thread: Apache Rewrite if image doesn't exist (/thread-67831.html)

Apache Rewrite if image doesn't exist - RBX - 04-15-2017

I have a resize controller with method named index which performs the resizing.

PHP Code:
public function index($location ''$size ''$image '') {
  //Some code here

I want to rewrite requests for images which don't exist to this function, but can't seem to get it to work.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^public/upload/([a-z]+)/(large|catalog|thumb)/([^/]+\.(?:jpg|png|jpeg))$ index.php/resize/index/$1/$2/$3 [L]

RewriteCond $1 !^(index\.php|public|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

I really have no experience in writing such rules, any help would be appreciated.

I was running it from folder CIAppScaffolding, so I needed to add RewriteBase /CIAppScaffolding/

Edit: It worked, but for some reason, seems to have stopped working. I'm confused.
Edit: I think it didn't work, I must've hit the URL of a previously generated image. So back to the original question.

RE: Apache Rewrite if image doesn't exist - RBX - 04-16-2017

I'm now using

PHP Code:
$route['^public/upload/([a-z]+)/(large|catalog|thumb|banner)/([^/]+\.(?:jpg|png|jpeg))$'] = 'resize/index/$1/$2/$3'

but this should be possible with just .htaccess rewrite rules, shouldn't it?