Никак не могу до конца понять nginx. Есть
клиент на PHP для Redis,
И вот такой конфиг для Apache
# phpredmin - Simple web interface to manage and monitor your Redis
#
# Allows only localhost by default
Alias /phpredmin /var/www/phpredmin/public
<Directory /var/www/phpredmin/>
AllowOverride All
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip localhost
Require local
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
Ограничения по IP мне не нужны, я работаю сейчас на виртуальной машине. А вот с запуском беда. Залил приложение в /var/www/redis/
Запускать нужно /var/www/redis/public/index.php
Я написал следующий конфиг для nginx
server {
listen 80;
set $bootstrap "index.php";
server_name redis.dev;
root /var/www/redis/public;
index $bootstrap;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# позволяем перехватывать запросы к несуществующим PHP-файлам
set $fsn /$bootstrap;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
# PATH_INFO и PATH_TRANSLATED могут быть опущены, но стандарт RFC 3875 определяет для CGI
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
}
}
Но у меня открывается только главная страница. Попытки перейти на какую-либо ссылку (например,
redis.dev/index.php/welcome/index/1) выдают 404 Not Found. В логах
2013/11/06 12:18:20 [error] 5728#0: *8 open() "/var/www/redis/public/index.php/welcome/index/1" failed (20: Not a directory), client: 192.168.237.1, server: redis.dev, request: «GET /index.php/welcome/index/1 HTTP/1.1», host: «redis.dev», referrer: «redis.dev/»
Помогите пожалуйста