2016-04-10 5 views
0

У меня есть страница статистики для моего собственного сайта, и я хочу сделать следующее;Nginx Rewrite загружает файл

User types: sub.mydomain/u/Username 
End result: sub.mydomain/stats.php?player=Username 

I want the end result to still show sub.domain/u/Username 

Однако кажется, что файл php загружается, и это серьезная проблема, так как в нем содержится информация о моей базе данных. Я использую Centos 6 с Php, полностью установленным вместе с php-fpm.

Вот мой virtual.conf файл:

location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params; 
     fastcgi_pass unix:/var/run/php5-fpm.sock; 
    } 
} 

server { 
    listen 80; 
    server_name stats.mydomain; 

    root /var/www/mydomain/public_html/stats/; 

    location/{ 
     proxy_pass http://mydomain/stats/home.php; 
    } 
    location /u { 
    rewrite ^/u/(.*)$ /stats.php?player=$1 last; 
    } 
} 

Я прочитал вопросы других народов и ответов, однако это не похоже, решили мою проблему.

Спасибо!

ответ

0

Похоже, что блок location ~ php ... находится в отдельном блоке сервера. Это должно быть внутри фигурных скобок server, чтобы вступить в силу на вашей статистике.

+0

Omg! Большое спасибо! – Chazmondo