У меня есть это правило в .htaccess
:RewriteRule для .htaccess
RewriteRule ^([^/]*)$ /user.php?username=$1 [L]
Выход:
http://domain.tld/username
Желаемый результат:
http://domain.tld/user/username
Как я могу это сделать?
У меня есть это правило в .htaccess
:RewriteRule для .htaccess
RewriteRule ^([^/]*)$ /user.php?username=$1 [L]
Выход:
http://domain.tld/username
Желаемый результат:
http://domain.tld/user/username
Как я могу это сделать?
Вы можете использовать этот код в DOCUMENT_ROOT/.htaccess
файле:
Options -MultiViews
RewriteEngine On
RewriteBase/
RewriteRule ^user/([^/]+)/?$ user.php?username=$1 [L,NC,QSA]
Внутренняя ошибка сервера Сервер обнаружил внутреннюю ошибку или неправильную конфигурацию и не смог выполнить ваш запрос. – User
Комментировать строку 'Параметры' и повторный тест. – anubhava
Можете ли вы мне помочь еще раз? Он не загружает изображения и стили там, мне нужно добавить ../ везде? – User
Вот как изменить URL со строкой запроса на пути:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/user.php [NC]
RewriteCond %{QUERY_STRING} ^.*username=([a-zA-Z]+).*$ [NC]
RewriteRule ^(.*)$ /user/%1? [L]
ввода
http://domain.tld/user.php?username=bob
Выход
http://domain.tld/user/bob
Вот как идти другим путем:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/user/ [NC]
RewriteRule ^user/(.+)$ /user.php?username=$1 [L]
Вход
http://domain.tld/user/bob
Выход
http://domain.tld/user.php?username=bob
Вы можете протестировать .htaccess
здесь: http://htaccess.madewithlove.be/
Ввод http: // domain.tld/user.php? Username = bob, вывод: http: // domain.tld/user/bob? Или наоборот? – Drakes