joomla: rewrite rule

Alexey V. Karagodov kav на karagodov.name
Вт Апр 3 14:51:58 UTC 2012


On 03.04.2012, at 18:35, Vadim A. Misbakh-Soloviov wrote:

> Ну, вообще, у меня, например, всё работает и с:
> 
> location / {
>        try_files $uri $uri/ /index.php?q=$request_uri;
> }
а наличие в комментариях "# Block out any script " не смущает? 

> 
> 
> 
> 02.04.2012 22:58, Alexey Wasilyev написал:
>> Добрый день.
>> 
>> Переношу сайт на джумле с апача на nginx. В .htaccess есть следующий код:
>> 
>> RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
>> # Block out any script trying to base64_encode crap to send via URL
>> RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
>> # Block out any script that includes a <script> tag in URL
>> RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
>> # Block out any script trying to set a PHP GLOBALS variable via URL
>> RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
>> # Block out any script trying to modify a _REQUEST variable via URL
>> RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
>> # Send all blocked request to homepage with 403 Forbidden error!
>> RewriteRule ^(.*)$ index.php [F,L]
>> 
>> посоветуйте, как его адаптировать под nginx без if'ов ?

например: 

www:/opt/nginx/conf/include/typical/http # cat joomla 
  location   ~* \.(class|inc|xml)$ {
   include    include/template/no-logging;
   return     403;
  }

  location   ~* \.(php|html|htm|feed|pdf|raw)$ {
   include    include/template/php52;
  }

  include    include/typical/http/php52;

вообще где то мелькала ссылка на страницу, которая апачевский рерайт конвертирует 
тривиальное гугление выдало первой ссылкой - http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

>> 
> 
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



Подробная информация о списке рассылки nginx-ru