我在騰訊租了一個(gè)云服務(wù)器,公網(wǎng)IP是119.29.138.107。
我在 start_gateway.php 里把0.0.0.0改成119.29.138.107然后在嘗試運(yùn)行,就出現(xiàn)了Error。
PHP Warning: stream_socket_server(): unable to connect to tcp://119.29.138.107:8282 (Cannot assign requested address) in /home/kong/GatewayWorker/Workerman/Worker.php on line 1383
Warning: stream_socket_server(): unable to connect to tcp://119.29.138.107:8282 (Cannot assign requested address) in /home/kong/GatewayWorker/Workerman/Worker.php on line 1383
PHP Fatal error: Uncaught exception 'Exception' with message 'Cannot assign requested address' in /home/kong/GatewayWorker/Workerman/Worker.php:1385
Stack trace:
#0 /home/kong/GatewayWorker/Workerman/Worker.php(522): Workerman\Worker->listen()
#1 /home/kong/GatewayWorker/Workerman/Worker.php(418): Workerman\Worker::initWorkers()
#2 /home/kong/GatewayWorker/start.php(32): Workerman\Worker::runAll()
#3 {main}
thrown in /home/kong/GatewayWorker/Workerman/Worker.php on line 1385
但是0.0.0.0或者內(nèi)網(wǎng)則可以,并且設(shè)置0.0.0.0后,可以通過(guò)學(xué)校的電腦訪問(wèn)。
請(qǐng)問(wèn)一下這是為什么?是騰訊云的問(wèn)題還是我Linux設(shè)置的問(wèn)題?還是什么別的原因?
謝謝。:D
還有一個(gè)小建議:
網(wǎng)站發(fā)表問(wèn)題下面的“瀏覽模式”經(jīng)常被誤認(rèn)為是編輯框,然后按一下Blackspace就整個(gè)頁(yè)面都倒退了,體驗(yàn)不是很好。
參考手冊(cè),http://doc3.workerman.net/faq/workerman-start-fail.html
Cannot assign requested address
簡(jiǎn)單的說(shuō)119.29.138.107不是你服務(wù)器的IP,無(wú)法監(jiān)聽(tīng)。
你可以運(yùn)行 ip addr
看下你服務(wù)器ip是多少,如果對(duì)服務(wù)器ip有疑問(wèn),可以去問(wèn)下騰訊云的客服。
感謝你的建議,不過(guò)有個(gè)預(yù)覽框體驗(yàn)會(huì)更好一些。
謝謝你的答復(fù)!
[root@VM_214_74_centos GatewayWorker]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:1e:dd:ba brd ff:ff:ff:ff:ff:ff
inet 10.104.214.74/18 brd 10.104.255.255 scope global eth0
valid_lft forever preferred_lft forever
這個(gè)的意思是只有內(nèi)網(wǎng)IP嗎?但是我用監(jiān)聽(tīng)0.0.0.0確實(shí)可以被外網(wǎng)訪問(wèn)到。
遇到了同樣的問(wèn)題,寫(xiě)給未來(lái)同樣遇到Cannot assign requested address問(wèn)題的人。
當(dāng)內(nèi)網(wǎng)ip,0.0.0.0測(cè)試可以通過(guò)但是換成公網(wǎng)就不可以,請(qǐng)參照以下步驟進(jìn)行檢查:
1.ip要填對(duì),公網(wǎng)ip
2.( 測(cè)試時(shí))云服務(wù)器上,安全組配置要把端口允許的ip設(shè)為0.0.0.0/0或者其他IP
系統(tǒng)防火墻,也是要配置規(guī)則的,百度怎么配置就好了,測(cè)試時(shí)可以直接關(guān)掉。
系統(tǒng)默認(rèn)防火墻是打開(kāi)的,所以目測(cè)題主和我一樣問(wèn)題出在了系統(tǒng)防火墻這里。
遇到過(guò)同樣的問(wèn)題,后來(lái)工單咨詢阿里云得知如果是阿里云專有網(wǎng)絡(luò)的話,那么你的服務(wù)器的外網(wǎng)ip實(shí)際上不屬于你這臺(tái)服務(wù)器,這個(gè)ip實(shí)際上類似一個(gè)代理設(shè)備,客戶端發(fā)的請(qǐng)求先到這個(gè)代理上,然后轉(zhuǎn)發(fā)到你的真實(shí)服務(wù)器。由于這個(gè)ip不屬于你這臺(tái)服務(wù)器,所以監(jiān)聽(tīng)不了,啟動(dòng)會(huì)報(bào)錯(cuò)。
如果是阿里云的經(jīng)典網(wǎng)絡(luò)就沒(méi)問(wèn)題,ip是真的你所在服務(wù)器的網(wǎng)卡上。
估計(jì)騰訊云也是類似的問(wèn)題。
實(shí)際上沒(méi)必要監(jiān)聽(tīng)本機(jī)外網(wǎng)ip,直接監(jiān)聽(tīng)0.0.0.0就好了,省事,移植性也好,不會(huì)給自己留坑。