2012-03-02 26 views
6

Tôi đang cố gắng làm việc với Symfony2 với PHP 5.4 mới và máy chủ tích hợp của nó. tôi tải Symfony2 và unziped nó trên máy chủ của tôi và thêm tập tin router.php này như đã đề cập here:Symfony2 với PHP 5.4 máy chủ tích hợp

<?php 

    if (isset($_SERVER['SCRIPT_FILENAME'])) { 
     return false; 
    } else { 
     require 'Symfony/web/app.php'; 
    } 

?> 

Máy chủ web riêng của mình công trình vì nếu tôi thay router.php với một cái gì đó đơn giản như phpinfo(); nó ra nó đúng nhưng với sự đề cập router.php tập lệnh trang web vẫn trắng/trắng. Nếu tôi mở công cụ nhà phát triển, nó sẽ trả về 500 Server error.

tôi bắt đầu máy chủ như thế:

/home/php54/php -S 0.0.0.0:88 router.php 

Mở vỏ của tôi, tôi không có đầu ra của một thông báo lỗi.

+0

Đây có thể không phải là câu trả lời nhưng bạn đã cài đặt nhà cung cấp cho Symfony chưa? – Shattuck

+0

Tôi đã tải xuống phiên bản 2.0.11 với Nhà cung cấp: http://symfony.com/download?v=Symfony_Standard_Vendors_2.0.11.zip Vì tôi chưa cài đặt Git. – Poru

+0

Ah, điều đó có ý nghĩa. Các bản ghi lỗi apache2 nói gì? – Shattuck

Trả lời

7

/home/php54/php -S 0.0.0.0:88 router.php

Bạn đang cố gắng để chạy máy chủ trên cổng đặc quyền, do đó, hoặc thay đổi cổng hoặc chạy như người dùng có đặc quyền này (không đề nghị).

Ngoài ra, bạn đã chỉnh sửa tập lệnh định tuyến và tôi nghĩ bạn đã nhầm lẫn với đường dẫn tệp. Bạn không chỉ định docroot trong lệnh của bạn, vì vậy thư mục hiện tại của bạn là docroot của bạn (vì vậy nó nên là web/thư mục của dự án của bạn). Nhưng sau đó đường dẫn đến bộ điều khiển phía trước trong router.php là sai (Symfony/web/app.php).

Bạn thực sự cần theo dõi cẩn thận hướng dẫn từ bài đăng trên blog của tôi. Vì vậy:

  • thay đổi thư mục hiện tại của bạn để thư mục web/dự án của bạn,
  • tải Router kịch bản: wget https://raw.github.com/gist/1507820/b9583ab7f7f5e0e4e29806c38c6c361220b6468f/router.php,
  • chạy server: php -S 0.0.0.0:8000 router.php.

Điều này sẽ hiệu quả.

Bạn cũng có thể thử bản vá từ my pull request để thêm lệnh đơn giản chỉ chạy máy chủ PHP tích hợp.

+0

lạ kịch bản router không hoạt động cho tôi, tôi phải đổi tên app_dev.php thành index.php để làm cho nó hoạt động đúng. – mpm

+3

Yêu cầu kéo này hiện được tích hợp. Bây giờ người ta có thể chạy 'máy chủ ứng dụng/console: chạy' hoặc' máy chủ ứng dụng/console: chạy 0.0.0.0: 8000' và sửa đổi app_dev.php để cho phép các hệ thống khác trên mạng của bạn truy cập vào nó (tuyệt vời để thử nghiệm ứng dụng của bạn trên thiết bị di động) –

0

Tôi không có môi trường php 5.4 tiện dụng, nhưng tải app_dev.php thay vì app.php, vì gỡ lỗi sẽ được đặt thành true và lỗi sẽ được báo cáo.

Các vấn đề liên quan