Я новичок в кодировании htaccess. У меня есть ссылка на одну из моих профилей профиля тренера, как показано ниже.
trainer-profile?usr=SamJohn&id=MTAy
Скрыть тэг.php, используя ht-доступ. Я хочу обновить эту структуру URL-адресов до
trainer-profile/SamJohn/MTAy
Пробовал следующий код, но он не работал
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+trainer-profile\.php\?usr=([a-z0-9]+)&id=([a-z0-9]+) [NC]
RewriteRule ^ %1/%2/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)/?$ /trainer-profile.php?usr=$1&id=$2 [L,NC]
Когда вы показываете .php в URL [
trainer-profile.php? Usr = SamJohn & id = MTAy ]
, этот код htaccess работает нормально, но перенаправляет его на другой URL-адрес, отображая ошибку 404
/OscarKemjika/MTAy/?usr=OscarKemjika&id=MTAy
Iam, используя следующий доступ ht
**Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^forums/ - [L,NC]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ $1.php [L]
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{QUERY_STRING} usr=([^&]*)&id=([^&]*)
RewriteRule ^trainer-profile$ trainer-profile/%1/%2/? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^trainer-profile/([a-z0-9]+)/([a-z0-9]+)/?$ trainer-profile.php?usr=$1&id=$2 [L,NC]**
Моя структура URL до применения htaccess-кода
http://mydomainname.com/trainer-profile?usr=JohnSam&id=MTAx
Заранее спасибо.
Попробуйте изменить
[a-z0-9]
в
[a-zA-Z0-9]
AZ для чувствительных к регистру