simpla cms nginx+php-fpm config

Тема в разделе "Simplacms", создана пользователем donvictorio, 8 июл 2013.

  1. donvictorio

    donvictorio

    Регистр.:
    28 янв 2010
    Сообщения:
    868
    Симпатии:
    796
    выловил на просторах сети.
    PHP:
    server {
        
    listen          80;
        
    server_name    simpla.lo;
        
    root /home/sites/simpla.lo/www;
        
    access_log off;
     
        
    location = /favicon.ico {
                
    log_not_found off;
                
    access_log off;
        }
     
        
    location = /robots.txt {
                
    allow all;
                
    log_not_found off;
                
    access_log off;
        }
     
        
    location ~* \.(txt|log)$ {
                
    allow 127.0.0.1;
                
    deny all;
        }
     
        
    location ^~ /simpla {
            
    auth_basic "Administrator Login";
            
    auth_basic_user_file $document_root/simpla/.passwd;
         
            
    try_files $uri $uri//index.php;
     
            
    index index.php;
         
            
    location ~ \.php$ {
                
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
                
    fastcgi_intercept_errors on;
                
    fastcgi_pass unix:/tmp/www.sock;
                include 
    fastcgi_params;
                
    fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
            }
        }
     
        
    location ~ /\. { deny all; }
     
        
    location ~* ^/(api|cache|compiled|config|design/(.*)/html|payment|Smarty|view)/(.*) { deny all; }
     
        
    location / {
                
    try_files $uri @rewrite;
        }
     
        
    location @rewrite {
            
    rewrite ^/catalog/([^/]+)/?$    index.php?module=ProductsView&category=$1;
            
    rewrite ^/catalog/([^/]+)/([^/]+)/?$    index.php?module=ProductsView&category=$1&brand=$2;
            
    rewrite ^/products/([^/]+)/?$    index.php?module=ProductView&product_url=$1;
            
    rewrite ^/products/?$    index.php?module=ProductsView;
            
    rewrite ^/brands/([^/]+)/?$    index.php?module=ProductsView&brand=$1;
            
    rewrite ^/brands/([^/]+)/page_([^/]+)/?$    index.php?module=ProductsView&brand=$1&page=$2;
            
    rewrite ^/search/([^/]+)/?$    index.php?module=ProductsView&keyword=$1;
            
    rewrite ^/search/?$    index.php?module=ProductsView;
            
    rewrite ^/blog/([^/]+)/?$    index.php?module=BlogView&url=$1;
            
    rewrite ^/blog/?$    index.php?module=BlogView;
            
    rewrite ^/cart/?$    index.php?module=CartView;
            
    rewrite ^/cart/([^/]+)/?$    index.php?module=CartView&add_variant=$1;
            
    rewrite ^/cart/remove/([^/]+)/?$    index.php?module=CartView&delete_variant=$1;
            
    rewrite ^/order/([^/]+)/?$    index.php?module=OrderView&url=$1;
            
    rewrite ^/order/?$    index.php?module=OrderView;
            
    rewrite ^/user/login/?$    index.php?module=LoginView;
            
    rewrite ^/user/register/?$    index.php?module=RegisterView;
            
    rewrite ^/user/logout/?$    index.php?module=LoginView&action=logout;
            
    rewrite ^/user/password_remind/?$    index.php?module=LoginView&action=password_remind;
            
    rewrite ^/user/password_remind/([0-9a-z]+)/?$    index.php?module=LoginView&action=password_remind&code=$1;
            
    rewrite ^/user/?$    index.php?module=UserView;
            
    rewrite ^/sitemap.xml?$    sitemap.php last;
            
    rewrite ^/yandex.xml?$    yandex.php last;
            
    rewrite ^/contact/?$    index.php?module=FeedbackView;
            
    rewrite ^/order/([^/]+)/([^/]+)/?$    index.php?module=OrderView&url=$1&file=$2;
            if (!-
    f $request_filename){
                
    set $rule_26 1$rule_26;
            }
            if (!-
    d $request_filename){
                
    set $rule_26 2$rule_26;
            }
            if (
    $rule_26 "21"){
                
    rewrite ^/([^/]*)/?$    index.php?module=PageView&page_url=$1;
            }
            
    rewrite ^/?$    index.php?module=MainView&page_url=;
         
            
    rewrite ^ /index.php;
        }
     
        
    location ~ \.php$ {
                
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
                
    fastcgi_intercept_errors on;
                
    fastcgi_pass unix:/tmp/www.sock;
                include 
    fastcgi_params;
                
    fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
        }
     
        
    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
            if (!-
    d $request_filename){
                
    set $rule_28 1$rule_28;
            }
         
            if (!-
    e $request_filename){
                
    rewrite ^/files/products/(.+) /resize/resize.php?file=$1&token=$query_string;
            }
     
            if (!-
    f $request_filename){
                
    set $rule_28 2$rule_28;
            }
            if (
    $rule_28 "21"){
                
    rewrite ^/files/products/(.+) resize/resize.php?file=$1&token=$args;
            }
            
    expires max;
            
    log_not_found off;
        }
    }

    но у меня есть парочка проблем - в админке при редактировании товара, когда добавляю изображение по ссылке - оно создаётся, но не загружается, в итоге вместо него квадратик.
    и при сохранении товара выдаёт ошибку 502 Bad Gateway, но данные сохраняются.
    если кто разбирается, намекните, где баг.
     
  2. vionov

    vionov Создатель

    Регистр.:
    2 май 2013
    Сообщения:
    14
    Симпатии:
    1
    Я так понимаю Simpla не дружит с nginx. Во всяком случае я заворачиваться не стал и тупо его отключил. Ошибки были те же самые. Хорошо что у мен VPS. Единственное посмотрите чтобы у Вас Myadmin не работал через nginx