1
У меня есть этот файл .htaccess.
:Когда URL-адрес переписывается, как соответствовать любому символу Unicode?
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z0-9]*)/?([a-zA-Z0-9]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
Это правило отлично работают для A-Z, A-Z и 0-9, но я хочу, чтобы правило соответствует каждому любому символу Unicode. Я попытался This:
RewriteRule ^([A-Za-z0-9_-\s]+)/?([A-Za-z0-9_-\s]+)?/?([A-Za-z0-9_-\s]+)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
и This:
RewriteRule ^([\s\S]*)/?([\s\S]*)?/?([\s\S]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
, но это не похоже на работу. Что я делаю не так?
Работа отлично! Большое спасибо, мой друг! – Sipo
Эй, @anubhave! До сих пор он работал отлично, но внезапно я получил ошибку. До сих пор я просто использовал '$ _GET [" controller "]', '$ _GET [" action "]', '$ _GET [" id "]', не проверяя, существует ли это, потому что '.htaccess' установил его в первый место. Но вдруг это дает мне ошибку: 'Примечание: Неопределенный индекс: id'. Как я могу это исправить? – Sipo
Не знаете, почему, но попробуйте: ** 'RewriteRule^([^ /] +)/([^ /] +)/([^ /] +) /? $ Index.php? Controller = $ 1 & action = $ 2 & id = $ 3 [QSA, L] '** – anubhava