kohana 3.1 в подкаталоге + ubuntu 14.04 + php-fpm + nginx 404 ошибки

У меня есть старое приложение Kohana, которое я пытаюсь поставить на свой VPS, но не могу заставить его работать. Я часами гуглял и смотрел ответы в кешированных форумах. Я перепробовал их все, и ничего не работает. по общему признанию, я понятия не имею, как иметь дело с nginx. Моя локальная версия приложения отлично работает с Apache. я в одном шаге от простой отмены своей учетной записи в линоде и получения общего хостинга! пожалуйста, отговори меня от этого уступа.

мой VPS:ubuntu 14.04LTS with php5-fpm and nginx 1.4.6.

Я обслуживаю все из моего каталога пользователя.

мой файл nginx sites-available:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /home/gabreal/Sites/public;
index index.html index.htm index.php;

# Make site accessible from http://localhost/
server_name localhost;

location / {

    try_files $uri $uri/ @kohana =404;
}

error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
    root /usr/share/nginx/html;
}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
    # With php5-fpm:
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}

location @kohana {
    rewrite ^/(.+)$ /index.php$request_uri last;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
    deny all;
}
}

мое приложение кохана находится в каталоге примерно так:

├──/home/gabreal/Sites/public/ │ ├── horizons/ │ │ ├── grader/ (aka the kohana application) │ │ │ ├── index.php │ │ │ ├── application/ │ │ │ ├── system/

когда я захожу в приложение, зайдя в http://example.com/horizons/grader загрузочный файл Kohana загружается и все перенаправления вызываются. Например, мой маршрут по умолчанию перенаправляет вас на стартовую страницу. если вы не вошли в систему, вы переходите к "user / login". URL-адрес устанавливается правильно. перейдя по ссылке выше, браузер перенаправляет на http://example.com/horizons/grader/user/login но я получаю страницу nginx 404.

так или иначе controller/action шаблон просто не работает с этой настройкой nginx.

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

ОБНОВИТЬ

просто, я установил phpmyadmin, и он работает отлично. я все еще не могу заставить кохану работать хотя...

ОБНОВЛЕНИЕ 2

Я сделал новую установку Kohana и попытался установить несколько основных контроллеров. только контроллер по умолчанию работает так же, как в моем приложении. Таким образом, переход к базовому URL для моего приложения ВСЕГДА работает, но переход непосредственно к любому типу ресурса /controller/action/id приводит к ошибке nginx 404 как при новой установке, так и в моем существующем приложении.

1 ответ

Это очевидная проблема:

    try_files $uri $uri/ @kohana =404;

=404и весь @kohana блок местоположения, вероятно, объединяются, чтобы вызвать проблему.

Вы можете упростить это, избавившись от @kohanalocation блок и упрощение try_files чтобы:

    try_files $uri $uri/ /index.php;

(Kohana не нуждается ни в каких других параметрах, когда вы передаете запрос в index.php; см. Страницу " Чистые URL").

Другие вопросы по тегам