Замена RewriteRules для Server Stat System

Думаю многие играли или играют или хотя-бы слышали о такой популярной игрухе как Counter Strike. Серверов с этой игрой в сети как грязи нынче.
В общем случилось поднимать игровой сервак + веб морду для модуля статистики Server Stat System.

Вкратце о ситуации, сама машин – VDS на Debian linux x64, достаточно сильная по железу, заточена и оптимизирована исключительно под веб. На серваке достаточно крупный форум.
Софт для такой ситуации стандартный: nginx, php-fastcgi, memcache и прочие радости. Apache отсутствует за ненадобностью :).
Сервер Counter Strike решили поднять чисто ради развлекухи местного населения, то есть обитателей форума, благо - ресурсы позволяют.
В сети была найдена сборка сервера под linux x64, установлена, настроена, залиты карты, моды и т.д.
Последним было поднять на субдомене веб - морду для игровой статистики, представляет из себя небольшой движок на PHP-Smarty.
Ставить тяжеленный Apache только ради игровой статистики, показалось не кошерно. Поэтому все было прикручено на nginx– php-fastcgi.
В комплекте идет файл .htaccess с совсем небольшим набором правил, однако просидел с ними несколько часов, сразу как-то с этим не заладилось :), в общем привожу готовый вариант для Server Stat System.
Правила .htaccess Apache для Server Stat System версии 1.5:

  1. RewriteEngine on
  2. DirectoryIndex index.php
  3.  
  4. RewriteRule ^configs - [L]
  5.  
  6. RewriteCond %{REQUEST_FILENAME} -f
  7. RewriteRule (jpg|css|js|png|ico|gif)$ - [L]
  8.  
  9. RewriteRule .* index.php

Конфиг nginx для той-же версии движка

server {
    listen              80;
    server_name stats.domain.ru;

    access_log logs/stats.access.log  main;
    error_log   logs/stats.error.log error;

    root /home/cs/public_html;

    rewrite index(.*) /index.php last;
    rewrite .+/([\d]+)\.html /index.php last;

    location / {
        index  index.php;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/tmp/fastcgi.sock;
        fastcgi_index  index.php;
        fastcgi_read_timeout        3m;
        fastcgi_send_timeout        3m;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

    location ~ \.(css|js){
        gzip_static on;
        expires 30d;
        access_log off;
        add_header Cache-Control public;
    }

    location ~ \.(jpg|png|gif|ico){
        expires             30d;
        access_log off;
        add_header          Cache-Control public;
    }


#### Нужно было для предыдущей версии этого-же движка, вроде 1.1
#    location /getcss {
#       rewrite ^/getcss(/.+\.(css|js))$ $1 last;
#    }
#######################################################


    error_page  404             = /404.html;
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

    location ~ /\.ht {
        deny  all;
    }
}

Конфиг рабочий, ни на что не претендует, просто как отправная точка, что-то все равно нужно допиливать индивидуально.

Комментарии

Спасибо!

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
Регистр имеет значение
   .oooooo.       .oooo.     .ooooo.    ooooo   ooooo  oooo                     
d8P' `Y8b .dP""Y88b d88' `8. `888' `888' `888
888 ]8P' Y88.. .8' 888 888 888 .oo. oooo ooo
888 <88b. `88888b. 888ooooo888 888P"Y88b `88. .8'
888 ooooo `88b. .8' ``88b 888 888 888 888 `88..8'
`88. .88' o. .88P `8. .88P 888 888 888 888 `888'
`Y8bood8P' `8bd88P' `boood8' o888o o888o o888o o888o `8'


Введите код, изображенный в стиле ASCII-арт.