/katalog/ co слешем в конце.https://www.kurgan.optimaservis.su/katalog уже без /Redirect 301 /katalog/ /Redirect 301 /katalog/$ /?
$ %DD где DD шестнадцатеричные цифры.\xDD.$paginate_links = '
"https://site.ru/catalog/page/1"
"https://site.ru/catalog/page/1/"
';
echo preg_replace( '~/page/1/?([\'"])~', '/\1', $paginate_links );server_name www.example.ru example.ru;listen 443 ssl default_server; server {
listen 80;
listen [::]:80;
server_name admin.example.ru;
rewrite ^ https://admin.example.ru$request_uri? permanent;
} proxy_set_header Host $host; и сделать такlocation /link/ {
proxy_pass https://site1.ru;
#proxy_set_header Host $host;
} server {
root /home/admin/web/site.com/public_html;
rewrite ^/plugin_name1/plugin\.php$ /plugins/plugin_name1/folder/plugin.php last;
rewrite ^/plugin_name2/plugin\.php$ /plugins/plugin_name2/folder/plugin.php last;
location ~ \.php {
fastcgi_pass ...;
include fastcgi_params;
}rewrite ^/(plugin_name1|plugin_name2)/(plugin\.php)$ /plugins/$1/folder/$2 last; $str = '
Channel: <ChannelId........................................> <State.....> <Time.....>
Exten: <DialedExten.............> CLCID: <ConnectedLineCID.......>
==========================================================================================
Channel: PJSIP/748-00009e7b/AppDial Up 00:00:18
Exten: s CLCID: "IVD-mob-9201105088: +74855238028" <+74855238028>
Channel: PJSIP/803-00009e79/AppDial Up 00:00:37
Exten: s CLCID: "RTK-int-S-88007755008+79021055918" <+79021055918>
Channel: PJSIP/815-00009e78/AppDial Up 00:01:06
Exten: s CLCID: "MTS-ru-S-88007008908+79639104178" <+79639104178>
Channel: PJSIP/820-00009e72/Dial Up 00:02:40
Exten: s CLCID: "CID:9622088888" <+79178858288>
Channel: PJSIP/BEELINE_9622088888-00009e73/AppDial Up 00:02:36
Exten: CLCID: "" <9622088888>
Objects found: 5
';
preg_match_all('~PJSIP/(\d+)\S+\s+Up\s+([\d:]+).+?<\K\+?\d+~s', $str, $m, PREG_SET_ORDER);
print_r($m); server {
listen 80;
listen [::]:80;
root /var/www/example_com;
index index.php;
server_name example.com;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
location ~ ^(?<parent_dir>.+/).+$ {
try_files $uri $uri/ $parent_dir/ $parent_dir$is_args$args;
}
location ~ /\.ht {
deny all;
}
} (?: [a-z] | [0-9/._-] )+ любое количество букв или не букв.(?!...) так что можно заглянуть вперёд и проверить что нет два подряд небуквенных [0-9/._-] (?! [0-9/._-] )String pattern = @"(?xi)
^
(?: (?<separator> (?: [a-z] | [0-9/._-] (?! [0-9/._-] ) )+ )
(?: { (?<filler> [a-z] (?:[0-9/._-]?[a-z])* ) }
| $
)
)+
$"; /{ut-enim_ad}-{minimaveniam} не подходит.и заполнитель, и разделитель не могут начинаться и не могут заканчиваться небуквенным символом
String pattern = @"(?xi)
^
(?: (?<separator> [a-z] (?:[0-9/._-]?[a-z])* )
(?: { (?<filler> [a-z] (?:[0-9/._-]?[a-z])* ) }
| $
)
)+
$";
if (Regex.Match(text, pattern).Success) {
Console.WriteLine("OK!");
} nemo-enim{ipsam}volupta/tem_q.uia{voluptas}-могут содержать только: латинские буквы, цифры, точка, слеш и нижнее подчеркивание;
{ut-enim_ad}-{minimaveniam}строка может начинаться только разделителем;
RewriteRule ^(.*)$ index.php/$1 [QSA]