Например: "https://www.website.com/ page?url_query=my-article" на "https://www.website.com/page/my-article", заменив "?url_query=" на "/"
Приношу извинения если я явно упустил что-то очевидное. Я прочитал несколько статей StackOverflow по этой теме, все с похожими, но немного разными ответами. Кажется, ни один из них не работает в моем файле .htaccess. Есть ли в моем файле что-то, что переопределяет или конфликтует с этим кодом?
Приведенная выше ссылка является примером: в моих точных URL-адресах я свернул "?url_query=" просто "? l=", чтобы, пока конечный запрос присутствует, он был как минимум настолько минимальным, насколько это возможно.
Вот точные страницы* Я работаю с:
Код: Выделить всё
https://localhost/clarity/i?l=my-event
https://localhost/clarity/library/event?l=my-event
https://localhost/clarity/library/article?l=my-article
.htaccess:
Код: Выделить всё
# Disable directory browsing
Options -Indexes
# Rewrite URLs
RewriteEngine On
RewriteBase /clarity/
# Redirect to https and www
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^clarity\.rf\.gd [NC]
RewriteRule ^(.*)$ https://www.clarity.rf.gd/$1 [L,R=301]
# Redirect to public folder
RewriteCond %{THE_REQUEST} /public/([^\s?]*) [NC]
RewriteRule ^ %1 [L,NE,R=301]
RewriteRule ^((?!public/).*)$ public/$1 [L,NC]
# Replace "?l=" to "/"
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?test/(.*?)/?$ /test.php?l=$1 [L]
# Redirect from "?l=" to "/"
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /test\.php\?l=([^\&\ ]+)
RewriteRule ^/?test\.php$ /test/%1? [L,R=301]
# Remove .html
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^([^\.]+)$ $1.html [NC,L]
# Remove .php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
~ Спасибо, что уделили время
Подробнее здесь: https://stackoverflow.com/questions/791 ... ar-to-work
Мобильная версия