RewriteEngine On

# 1. Force HTTPS as early as possible
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# 2. Remove www (redirect to non-www)
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [NE,R=301,L]

# 3. Remove trailing slash from URLs (except directories)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

# 4. Redirect .html URLs to clean URLs (canonical)
RewriteCond %{THE_REQUEST} /([^.]+)\.html [NC]
RewriteRule ^([^.]+)\.html$ /$1 [R=301,L]

# 5. Redirect .php URLs to clean URLs (canonical)
RewriteCond %{THE_REQUEST} /([^.]+)\.php [NC]
RewriteRule ^([^.]+)\.php$ /$1 [R=301,L]

# 6. Internally rewrite extensionless URLs to .html if file exists
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.+?)/?$ $1.html [L]

Redirect 301 /convert-to-png/convert-gif-to-png.php https://instablogs.net/convert-gif-to-png
Redirect 301 /convert-to-png/convert-tiff-to-png.php https://instablogs.net/convert-tiff-to-png
