2011-12-04 25 views
21

Có, có một máy chủ web tích hợp trong bản phát hành sắp tới của PHP 5.4 mà bạn có thể thử trong các ứng cử viên phát hành của họ (tôi đã tìm hiểu về điều này gần đây!)Chạy PHP 5.4 máy chủ web tích hợp bên ngoài localhost

http://php.net/manual/en/features.commandline.webserver.php

Điều tôi cần giúp đỡ là có cách nào để chạy trên tên miền khác với máy chủ cục bộ (hoạt động tốt trên máy chủ cục bộ, cổng 80) không? Ngay cả 127.0.0.1 cũng không hoạt động. Tôi đã đặt trong tên máy chủ giả trong tập tin host của tôi để trỏ đến 127.0.0.1 và họ không làm việc quá. Tôi hiểu rằng đó chỉ là một ứng cử viên phát hành, nhưng tôi muốn biết liệu có ai khác đã đưa ra giải pháp cho vấn đề này để tôi có thể thử nghiệm ứng dụng của mình với tên miền thực trỏ đến 127.0.0.1 trong tệp máy chủ của tôi không. Hệ điều hành là Windows 7 Professional SP1.

Những điều tôi đã cố gắng: 1. Googling (duh) 2. Nhìn qua php.ini cho các tùy chọn 3. Cố gắng ra 127.0.0.1, IP LAN của tôi, IP WAN của tôi với cổng 80 chuyển tiếp và NAT vấn đề loopback cố định (router chạy DD-WRT)

+0

Nếu đó là máy chủ * web *, bạn tốt hơn ở SuperUser hoặc ServerFault, trang web này sẽ hướng tới * lập trình thực tế với PHP *. – animuson

+0

Tôi không chắc chắn liệu nó có thuộc về không, vì đây là một cái gì đó được xây dựng trong PHP và có thể có một cái gì đó để làm với cấu hình của PHP chính nó. Cảm ơn bạn đã đề xuất! – Shanshui

+0

Tôi đã suy nghĩ một chút, và tôi nghĩ bạn nói đúng. Tôi chỉ gắn cờ câu hỏi của riêng mình để chuyển nó sang ServerFault. Hy vọng rằng một người điều hành sẽ đến sớm. – Shanshui

Trả lời

52

tôi đã làm những thử nghiệm trên một hệ thống Windows XP, nhưng nên làm việc như nhau trên Linux cũng bằng cách thay đổi các lệnh.

Chạy máy chủ thử nghiệm PHP của bạn như thế này:

C:/php/php.exe -S 0.0.0.0:80 
or 
/usr/bin/php -S 0.0.0.0:80 

0.0.0.0 sẽ liên kết với tất cả các địa chỉ IP có sẵn trên hệ thống.

Trên máy tính khác trên mạng, tôi đã cấu hình file host để trỏ đến IP nội bộ của hệ thống chạy PHP sử dụng một miền tùy chỉnh. Đây không phải là 127.0.0.1 như là đề cập đến các máy chủ địa phương, trong trường hợp của tôi tôi chỉ máy tính chính của tôi đến 192.168.88.247 đó là máy XP chạy PHP. Lưu ý tường lửa nên được vô hiệu hóa hoặc thiết lập để cho phép lưu lượng truy cập trên cổng 80 trên máy chạy php.

tôi cấu hình router của tôi đến cảng giao thông chuyển tiếp từ cổng bên ngoài 80 đến 192.168.88.247:80. Sau đó, bằng cách sử dụng một tập tin host trên một máy tính từ một mạng bên ngoài, tôi cấu hình tên miền giả để trỏ đến IP WAN của tôi. Tôi đã có thể truy cập vào máy chủ web PHP bên ngoài.

Điều đó nói rằng, nó chỉ là một máy chủ để thử nghiệm, vì vậy có thể có rủi ro bảo mật chưa được biết mở nó lên đến thế giới bên ngoài.

Hy vọng sẽ giúp bạn.

+0

Cảm ơn mẹo 0.0.0.0 đó! – Shanshui

+0

Cảm ơn mẹo 0.0.0.0! quá ... ;-) – ZEE

+0

làm cách nào để nó chỉ chấp nhận các kết nối từ các máy chủ được chỉ định trước? –

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