Rumah > pembangunan bahagian belakang > tutorial php > Mengapa Anchor CMS 0.8 Melemparkan Ralat 'Tiada Fail Input Ditentukan' pada Pelayan CGI?

Mengapa Anchor CMS 0.8 Melemparkan Ralat 'Tiada Fail Input Ditentukan' pada Pelayan CGI?

Barbara Streisand
Lepaskan: 2024-11-10 11:01:02
asal
738 orang telah melayarinya

Why Does Anchor CMS 0.8 Throw a

Menyelesaikan Ralat "Tiada Fail Input Ditentukan" dalam Anchor CMS

Ralat "No input file specified" yang dihadapi semasa menaik taraf Anchor CMS kepada versi 0.8 berpunca daripada pelaksanaan PHP pada pelayan, terutamanya dalam persekitaran CGI.

Untuk memahami perkara ini ralat, adalah penting untuk memahami cara sistem anda mengendalikan URL. Menurut fail .htaccess yang disediakan, CMS anda menjangkakan URL akan dihantar sebagai pembolehubah PATH_INFO. Walau bagaimanapun, pelaksanaan CGI kekurangan PATH_INFO, menyebabkan PHP mengembalikan ralat yang disebutkan di atas apabila cuba melepasi URI.

Meneroka Penyelesaian:

  1. Percubaan untuk Memperbaiki Isu:

    • Walaupun boleh, mengubah suai tetapan PHP tidak mungkin dibenarkan pada persekitaran pengehosan kongsi seperti GoDaddy.
  2. Alternatif Pendekatan:

    • System/uri.php bergantung pada dua jenis pengesanan URI: PATH_INFO dan REQUEST_URI. Memandangkan PATH_INFO bermasalah dalam kes kami, kami beralih kepada REQUEST_URI.
    • Walau bagaimanapun, menghantar terus URI ke REQUEST_URI membawa kepada penghuraian yang tidak mencukupi oleh parse_url(), hanya mengembalikan laluan URL.
    • Oleh itu, satu-satunya penyelesaian yang berdaya maju ialah mengubah suai CMS teras.

Semak .htaccess dan Sistem/uri.php Pengubahsuaian:

Ubah suai sistem/uri.php:

  • Tambahkan QUERY_STRING sebagai elemen pertama pada tatasusunan dalam talian 40.

Ubah suai .htaccess:

  • Tukar RewriteRule untuk lulus URI sebagai rentetan pertanyaan:

    RewriteRule ^(.*)$ index.php?/ [L]
    Salin selepas log masuk

Penyelesaian ini membenarkan URI dihantar ke index.php sebagai QUERY_STRING, membolehkan mekanisme pengesanan URI untuk mengesannya. Walau bagaimanapun, ia juga memerlukan mengekalkan fail teras yang diubah suai sehingga isu ini diselesaikan.

Pertimbangkan Pilihan CMS Alternatif:

Sekiranya pendekatan yang dinyatakan di atas terbukti tidak mencukupi, mungkin berhemat untuk pertimbangkan CMS yang lebih teguh dan boleh dipercayai yang tidak menghadapi isu sedemikian.

Atas ialah kandungan terperinci Mengapa Anchor CMS 0.8 Melemparkan Ralat 'Tiada Fail Input Ditentukan' pada Pelayan CGI?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan