2016-11-27 7 views
0

をトリガーこれが私の元nginxの構成であるnginxの書き換えの設定は、スクリプトのダウンロード

server { 
    listen  80; 
    server_name my-site.com; 
    return  301 http://www.my-site.com$request_uri; 
} 

server { 
    listen  80; 
    server_name www.my-site.com; 
    root   /var/www/sites/mysite/public_html; 
    index  index.php index.html index.html; 

    access_log /var/log/nginx/mysite.access.log; 
    error_log /var/log/nginx/mysite.error.log; 

    ssl off; 

    location/{ 
     try_files $uri $uri/ index.php; 
    } 

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_pass unix:/var/run/php-fpm.sock; 
     fastcgi_read_timeout 180; 
     fastcgi_buffers 16 16k; 
     fastcgi_buffer_size 32k; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params; 
    } 
} 

それから私は、サブフォルダに別のサイトを追加したい「my-site.com/another_app」を言うことができますしかし、同じようにこのサイトは、URLを書き換える必要があります。

my-site.com/another_app/api 
my-site.com/another_app/home 

my-site.com/another-app/api.php 
my-site.com/another-app/index.php?mod=home 
なり

私はすでにこの

location/{ 
    try_files $uri $uri/ index.php; 
    rewrite ^/another-app/api$ /another-app/api.php break; 
    rewrite ^/another-app/([A-Za-z0-9-|_]+)/?$ /another-app/index.php?mod=$1 break; 
} 

よう「場所/」内の書き換えを追加しようとしました。しかし、私は「my-site.com/another-app/api」にアクセスしようとするたびにそれがトリガー

私は何かを見つけられませんでしたか?

+0

2つのアプリケーションが同じドキュメントルートを共有していると仮定して、 'break'の代わりに' last'を使用してみてください。[this document](http://nginx.org/ja/docs/http/ngx_http_rewrite_module.html#rewrite ) –

+0

私は最後を使用しようとしましたが、まだトリガースクリプトのdonwload – user2559300

答えて

0

私はまだコメントできませんので、私はこのように答えています。

私は静的フォルダ内のファイルのインデックスを作成してそれを修正:

location /static/ { 
    # My static files including the css reside inside my static 
    # folder e.g. /static/css/style.css 
    # autoindex on will index everything under the given location 

    autoindex on; 
} 

また@Richardスミスは使ってみて、言った私は、CSSやJSなどの静的ファイルでこの問題を抱えている

最終。