апачида “реврайт” белән сорау тамгалы адресны гади файлга бәйләү

мин ясаган эзләгечтәге бер ысул:
“апачи” серверында “мод реврайт” белән генә ничек “?” тамгалы адресларны һәр берсе гади файлдан чыга торган итеп була:
бер инглизчә форумда әйттем: http://wordpress.org/support/topic/plugin-wp-super-cache-cache-requests-with-query-string-_get-parameters?replies=3#post-1930429 .
мондый программа ясыйсың:

#!/usr/bin/php
<?php
set_time_limit(0);
$fdin=fopen("php://stdin","r");
$fdout=fopen("php://stdout","w");
set_file_buffer($fdout,0);
$nini=array('/','?');
$nige=array('%2F','%39');//3f
while($i=fgets($fdin)){
$o=str_replace($nini,$nige,$i);
fputs($fdout,$o);
}
?>

линукста бу файл эшләтелеп җибәрелә торган булырга тиеш.

мондый “реврайт” кодлары язасы:
RewriteEngine On
RewriteMap aylandirow1 prg:/var/www/saytlar/izlaw/aylandirow1.php
RewriteCond %{QUERY_STRING} (.+)
RewriteRule /arhif/(....)/(..)/(..)/(.+) /var/www/saytlar/izlaw/arhif/$1/$2/$3/${aylandirow1:$4}\%39%0 [type=text/html]
RewriteRule /arhif/(....)/(..)/(..)/(.+) /var/www/saytlar/izlaw/arhif/$1/$2/$3/${aylandirow1:$4} [type=text/html]

моны эшләтеп җибәрер өчен сервер админы булырга кирәк, һәм серверны сүндереп кабызасы.

файлларда “?” тамгасы урынында “%39”, һәм бу очракта “/” – “авыш сызык” та кодлаштырылган, әмма аның “авыш сызык” тамгасы катлаулы нәрсә түгел иде дә, сорау тамгасы белән проблема чыккан иде минем.

әллә нинди чит ил кешеләренә сөйләгәч сезгә дә, ягъни моны укучыларга, “безнекеләр”гә, татар телендә сөйләшүчеләргә дә әйтим инде дип уйладым 🙂 .

Җавап калдыру

Сезнең e-mail адресыгыз һәркемгә ачык итеп куелмаячак.