Codeigniter URL'si yalnızca varsayılan yönlendirici için çalışır


1

Codeigniter'i Nginx'e şu yapılandırma ile kurdum:

server {
listen       80;
server_name  myserver;

root /usr/share/nginx/html;
index index.php index.html index.htm;
error_log /var/log/nginx/localhost.error_log debug;
 location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
            expires max;
            log_not_found off;
    }
location / {
    try_files $uri $uri/ /index.php?/$request_uri;
        location = /index.php {

            fastcgi_pass   127.0.0.1:9000;
            fastcgi_param  SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;
            include        fastcgi_params;
        }
}

location ~ /\.ht {
    deny  all;
    }
}

Ayrıca, ceodeignigter üzerindeki yapılandırmayı şu şekilde değiştirdim:

...
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
...

bu benim varsayılan denetleyicim:

<?php

class Index extends CI_Controller {
    public function __construct(){
            parent::__construct();
    }
    public function index(){
        $this->load->view('index');
    }
}

router.php dosyasında tanımladığım varsayılan Denetleyicime erişebiliyorum ancak henüz diğer Denetleyicilere erişemiyorum. herhangi bir yardım sevinir.

Yanıtlar:


0

kullanırım

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

ve çalışıyor. Ayrıca ekleyebilirsiniz

try_files /index.php$request_uri;

sonunda. Yok mu? CI içinde index.php 'den sonra.


maalesef o da işe yaramıyor, gerçekten kafam karıştı!
Sadece MAJ
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.