Что означает $ 1 в моем файле .htaccess?

Мне нужно изменить мой .htaccess и есть две строки, которые я не понимаю.

 RewriteCond %{REQUEST_FILENAME} !-l RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

Когда я буду использовать эти строки?

Не место, где можно дать полный учебник, но здесь он кратко;

RewriteCond в основном означает «выполнить следующий RewriteRule, только если это правда». Путь !-l – это условие, что запрос не для ссылки ( ! Означает нет, -l означает ссылку)

RewriteRule в основном означает, что если запрос выполнен, который соответствует ^(.+)$ (Соответствует любому URL-адресу, кроме корня сервера), он будет переписан как index.php?url=$1 что означает, что запрос на olle будет переписан как index.php?url=olle .

QSA означает, что если строка запроса передана с исходным URL-адресом, она будет добавлена ​​к переписыванию ( olle?p=1 будет переписана как index.php?url=olle&p=1 .

L означает, что если правило совпадает, не обрабатывайте больше RewriteRules ниже этого.

Для получения более полной информации об этом, перейдите по ссылкам выше. Поддержка перезаписи может быть немного трудно понять, но из stackoverflow можно найти несколько примеров.

Если выполняются следующие условия, перепишите URL-адрес:
Если запрошенное имя файла не является каталогом,

 RewriteCond %{REQUEST_FILENAME} !-d 

и если запрошенное имя файла не является обычным файлом, который существует,

 RewriteCond %{REQUEST_FILENAME} !-f 

и если запрошенное имя файла не является символической ссылкой,

 RewriteCond %{REQUEST_FILENAME} !-l 

затем перепишите URL-адрес следующим образом:
Возьмите все имя файла запроса и укажите его как значение параметра запроса url для index.php. Добавьте строку запроса из исходного URL в качестве дополнительных параметров запроса (QSA) и прекратите обработку этого файла .htaccess (L).

 RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

Это приведет к захвату запросов на такие файлы, как version , release и README.md , и т. README.md , README.md должны рассматриваться как конечные точки, если они определены (как в случае / release), так и как «не найдены».

  • Удалите расширение .php с .htaccess
  • .htaccess переписать для перенаправления корневого URL в подкаталог
  • Как отлаживать скрипт перезаписи htaccess
  • Как запретить доступ к файлу в .htaccess
  • перенаправить все расширения .html на .php
  • Поддомен htaccess
  • .htaccess перенаправить все страницы в новый домен.
  • конвертировать исходный URL в дружественный URL-адрес
  • http до https через .htaccess
  • Как удалить .htaccess защиту паролем из подкаталога
  • Access-Control-Allow-Origin Несколько доменов происхождения?
  • Давайте будем гением компьютера.