Tôi đang phát triển một ứng dụng web RESTful trong PHP. Những gì tôi đã có là:Làm cách nào để IIS6 nhận ra các tuyến đường dẫn thay vì trả về lỗi "404 Chưa được mô tả"?
- trên máy chủ thử nghiệm , Windows 7/Apache 2.2/PHP 5.2.9 (mod_php)
- về sản xuất máy chủ , Windows Server 2003/IIS6/PHP 5.2 .4 (php5isapi.dll)
trong khi môi trường thử nghiệm đã có không có vấn đề, máy chủ sản xuất không gửi bất kỳ yêu cầu RESTful với pathinfo (ví dụ, các trang như ví dụ /mypath/app.php/controller/id
, nơi kịch bản xử lý là /mypath/app.php
) và cung cấp cho một trang trống đẹp wi th thông điệp:
No input file specified.
Sử dụng firebug, tôi có thể nhìn thấy các tiêu đề phản ứng là:
HTTP/1.1 404 Undescribed
Proxy-Connection: close
Connection: close
Via: 1.1 XXXXX
Date: Thu, 23 Jun 2011 14:51:18 GMT
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET, PHP/5.2.4
đâu XXXXX
là tên của proxy.
Tôi googled xung quanh và có vẻ như không phải SO cũng như phần còn lại của web có thể cung cấp các giải pháp thiết thực cho vấn đề này. Bất kỳ đầu mối?
Vì máy chủ sản xuất cần theo kịp, cài đặt lại PHP và/hoặc IIS là không phải là một tùy chọn. Những gì tôi có thể làm là thay đổi cấu hình IIS/PHP, và khởi động lại IIS.
Cảm ơn trước,
Paolo
Như tôi đã nêu trong câu hỏi của mình, tôi không thể cài đặt thêm thư viện trên máy chủ sản xuất. Hơn nữa, một trong những bạn đề cập đến là một sản phẩm thương mại vì vậy đây không phải là một giải pháp khả thi. –
vì vậy, hãy thử định cấu hình tài liệu 404 và làm cho mọi người yêu cầu tệp đó và xử lý trong tệp đó. – hanguofeng