php - Phalcon hanya boleh mengakses laluan / dan laluan lain menggunakan indexAction.
phpcn_u1582
phpcn_u1582 2017-05-16 13:13:09
0
2
758

Mengikut langkah di bawah, masalah pelik berlaku.
Saya mencipta projek, test, menggunakan alat phalcon-devtools-2.0.13.
Kemudian, ia berjalan dengan jayanya!
Selepas itu, saya menukar kandungan berikut:

< /p>

Tiada masalah:

< /p>

Tetapi:

< /p>

Saya menambahkan laluan dan berlaku kesilapan:

< /p>

Maaf, apa yang berlaku? Saya kini php5.6 phalcon2.0 konfigurasi nginx:

 pelayan {
           dengar 80;
           ujian nama_pelayan;
           root /Users/ryugou/test/public;
           indeks index.php index.html index.htm;
           charset utf-8;
  
          lokasi/{
                try_files $uri $uri/ /index.php;
         }
 
        lokasi ~ \.php$ {
             try_files $uri =404;
 
             fastcgi_pass 127.0.0.1:9000;
             fastcgi_index /index.php;
 
             sertakan fastcgi_params;
             fastcgi_split_path_info ^(.+\.php)(/.+)$;
             fastcgi_param PATH_INFO $fastcgi_path_info;
             fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
             fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          }
 
         lokasi ~ /\.ht {
             menafikan semua;
         }
 }
phpcn_u1582
phpcn_u1582

membalas semua(2)
刘奇

Kod pendaftaran Pos DI

PHPzhong

Masalah alam sekitar bukanlah pepijat dalam versi php atau versi Phalcon, tetapi masalah konfigurasi nginx!
Perangkap!
Maklumat URI lalai Phalcon diperoleh daripada $_GET['_url'], atau ia boleh ditetapkan kepada $_SERER['REQUEST_URI'].
Menggunakan dua kaedah berbeza ini untuk mendapatkan memerlukan konfigurasi nginx yang berbeza! ! (Untuk butiran, sila lihat dokumentasi Phalcon Konfigurasi nginx Phalcon)
Ini mesti dikonfigurasikan!
Gunakan $_GET['_url'] (lalai):

lokasi / {

    try_files $uri $uri/ /index.php?_url=$uri&$args;

}
Gunakan $_SERVER['REQUEST_URI'], konfigurasi nginx:

lokasi / {

    try_files $uri $uri/ /index.php;

}
Jika anda ingin menggunakan $_SERVER['REQUEST_URI'] secara biasa, tidak mengapa jika nginx dikonfigurasikan, anda masih perlu mengubahnya dalam kod php:

gunakan PhalconMvcRouter;
$router->setUriSource(Router::URI_SOURCE_SERVER_REQUEST_URI);

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan