Cara melaksanakan fungsi pelayan web dalam dokumen Workerman memerlukan contoh kod khusus
Pelayan web ialah bahagian yang amat diperlukan dalam dunia Internet moden, dan Workerman ialah rangka kerja sumber terbuka PHP yang berkuasa yang membolehkan kami melaksanakan web dengan mudah fungsi pelayan. Artikel ini akan memperkenalkan cara menggunakan Workerman untuk melaksanakan pelayan web dan memberikan contoh kod khusus.
Pertama, kita perlu memasang rangka kerja Workerman. Ia boleh dipasang melalui Komposer, jalankan arahan berikut:
composer require workerman/workerman
Selepas pemasangan selesai, kita boleh mula menulis kod untuk melaksanakan pelayan web. Berikut ialah contoh mudah:
<?php use WorkermanWorker; require_once __DIR__ . '/vendor/autoload.php'; // 创建一个Worker监听指定端口,可以支持多个端口同时监听 $http_worker = new Worker('http://0.0.0.0:8080'); // 设置Web服务器的根目录 $http_worker->documentRoot = '/path/to/your/web/root'; // 设置处理HTTP请求的回调函数 $http_worker->onMessage = function($connection, $request) { // 解析请求的URL路径 $url_info = parse_url($request->url()); $path = $url_info['path']; // 拼接文件路径 $file = $http_worker->documentRoot . $path; // 判断请求的文件是否存在 if (is_file($file)) { // 响应请求的文件内容 $connection->send(file_get_contents($file)); } else { // 文件不存在,返回404错误 $connection->send("HTTP/1.1 404 Not Found 404 Not Found"); } }; // 运行Worker Worker::runAll();
Kod di atas mencipta HTTP Worker dan mendengar pada port 8080. Dengan menetapkan atribut documentRoot
, kami boleh menentukan direktori akar pelayan web dan memetakan semua permintaan kepada fail dalam direktori tersebut. documentRoot
属性,我们可以指定Web服务器的根目录,将所有请求映射到该目录下的文件。
onMessage
onMessage
bertanggungjawab untuk memproses permintaan HTTP yang diterima. Fungsi ini mula-mula menghuraikan laluan URL dan kemudian menggabungkan laluan fail. Jika fail wujud, kembalikan kandungan fail sebagai respons HTTP jika fail itu tidak wujud, kembalikan ralat 404. Seterusnya, kita boleh menggunakan baris arahan untuk memulakan pelayan web: php your_file_path.php start
Atas ialah kandungan terperinci Cara melaksanakan fungsi pelayan web dalam dokumentasi Workerman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!