У меня есть chatdemo.php, который включает файл сокета socket.php. Внутри файла socket.php есть строка
socket_bind($master, $address, $port);
, где $address = "localhost"
и $port=1300
.
Однако, когда я ставлю на браузер (а apache из XAMPP равен up) http://localhost/demo/chatdemo.php он говорит:
Warning: socket_bind() [function.socket-bind]: unable to bind address [48]:
Address already in use in /Applications/XAMPP/xamppfiles/htdocs/demo/socket.class.php on line 23
socket_bind() failed
Итак, вместо этого я перешел в командную строку и сделал
php -q /demo/chatbot.demo.php
Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Los_Angeles' for 'PDT/-7.0/DST' instead in /demo/socket.php on line 21
Server Started : 2012-03-27 17:24:24
Listening on : localhost port 13000
Master socket : Resource id #5
Поэтому вопрос таков: почему я не могу запустить этот chatdemo.php в своем браузере на локальном хосте (используя XAMPP), тогда как я могу выполнить его в командной строке с помощью php (не-XAMPP) ?