Я могу заменить все %20
на -
из URL, используя:
.htaccess:
RewriteRule "^(\S*)\s+(\S*)$" /$1-$2 [L,NE,R=302]
RewriteRule "^(\S*)\s+(\S*\s+.*)$" $1-$2 [L]
# remove multiple hyphens
RewriteRule ^(.*)-{2,}(.*)$ /$1-$2 [L,R=302]
Теперь я хочусделать эту работу только для желаемых URL Не для всех, URL похож на:
Example.com / blog / example% title => example.com /blog / example-title
Example.com / product / example% product => example.com / product / example-product
Как я могу сделать это, используя .htaccess
?
РЕДАКТИРОВАТЬ:
Основная проблема заключается в том, что когда я загружаю изображения на сервер с % с именем типа image 1.jpg
, URL перенаправляет меня наимя типа image-1.jpg
и сервер не может найти изображение для показа
РЕДАКТИРОВАТЬ 2
my .htaccess заранее имеют эти коды:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]