Я пытаюсь и googling часами сейчас и не могу найти решение для моей проблемы. Я хочу переписать:htaccess переписать правило без косой черты
domain.com/profile.php?user=abc> domain.com/abc
Я использую:
RewriteRule ^(.*)/$ /profile.php?user=$1 [L]
, который работает только с косой чертой в конце. Если я попробую его без косой черты
RewriteRule ^(.*)$ /profile.php?user=$1 [L]
Я получаю ошибку внутреннего сервера!
Полное .htaccess
ErrorDocument 404 /errors/404.php
ErrorDocument 500 /errors/500.php
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteCond %{REQUEST_URI} !\.(css|jpg|gif|png|jar|js|html|htm|php)$
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]
RewriteRule ^share/([^/]*)/$ /share/share.php?id=$1 [L]
RewriteRule ^(.*)/$ /profile.php?user=$1 [L]
<IfModule mod_deflate.c>
<FilesMatch "\.(html|php|txt|xml|js|css|svg)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE\s7 !no-gzip !gzip-only-text/html
Someboy иметь представление о том, что я делаю не так?
Спасибо, Корнель
Th анки за вашу помощь. С вашей стороны запрос работает правильно, но URL-адрес возвращается к 'profile.php? User = xxx' –
Это странно. Трудно понять, почему, может быть, из-за других правил, которые вы могли бы иметь? Не могли бы вы посмотреть заголовки http и рассказать мне, что происходит при попытке вашей ссылки? –
Хм очень странно, теперь это работает. Есть ли способ получить оба варианта с **/** и без **/** и конца? –