在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當(dāng)前位置:雨林木風(fēng)下載站 > 網(wǎng)頁設(shè)計教程 > 詳細頁面

php服務(wù)nginx不能使用file_get_contents的處理方法

php服務(wù)nginx不能使用file_get_contents的處理方法

更新時間:2025-12-05 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

導(dǎo)網(wǎng)頁的本質(zhì)就是超級文本標記語言,通過結(jié)合使用其他的Web技術(shù)(如:腳本語言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強大的網(wǎng)頁。因而,超級文本標記語言是萬維網(wǎng)(Web)編程的基礎(chǔ),也就是說萬維網(wǎng)是建立...
網(wǎng)頁的本質(zhì)就是超級文本標記語言,通過結(jié)合使用其他的Web技術(shù)(如:腳本語言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強大的網(wǎng)頁。因而,超級文本標記語言是萬維網(wǎng)(Web)編程的基礎(chǔ),也就是說萬維網(wǎng)是建立在超文本基礎(chǔ)之上的。超級文本標記語言之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。
在Windows環(huán)境下搭建了一個本地開發(fā)服務(wù)環(huán)境,使用Nginx做服務(wù),但是在使用file_get_contents()獲取本地的鏈接時出現(xiàn)了錯誤,下面的文章將給大家介紹關(guān)于這個問題的解決方法。

一、問題說明

在Windows環(huán)境下搭建了一個本地開發(fā)服務(wù)環(huán)境,使用Nginx做服務(wù),但是在使用file_get_contents()獲取本地的鏈接時http://127.0.0.1/index.php,出現(xiàn)了這樣的錯誤:

file_get_contents(http://127.0.0.1/index.php) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: HTTP request failed!

本地電腦php環(huán)境為:nginx+php+mysql;于是找到這篇文章做個筆記,記錄下!

這兩天一直在搞windows下nginx+fastcgi的file_get_contents請求。我想,很多同學(xué)都遇到當(dāng)file_get_contents請求外網(wǎng)的http/https的php文件時毫無壓力,比如echo file_get_contents(‘http://www.baidu.com’) ,它會顯示百度的頁面。但當(dāng)你請求localhost/127.0.0.1本地網(wǎng)絡(luò)的php服務(wù)時卻一直是timeout,無論你將請求時間和腳本運行時間多長都無法返回數(shù)據(jù),如file_get_contents(‘http://localhost/phpinfo.php’) 。然而當(dāng)你嘗試請求html這樣的靜態(tài)文件時卻完全沒有問題。是什么原因呢?!

首先,我們知道file_get_contents/curl/fopen打開一個基于tcp/ip的http請求時,請求數(shù)據(jù)發(fā)送到nginx,而nginx則委托給php-cgi(fastcgi)處理php文件,一般情況fastcgi處理完一個php請求后會馬上釋放結(jié)束信號,等待下一個處理請求(當(dāng)然也有程序假死,一直占用資源的情況)。打開nginx.conf,我們看到下面這一行:

location ~ .php {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  d:/www/htdocs$fastcgi_script_name;
        include        fastcgi_params;
}

上面已經(jīng)清楚地看到,所有使用php結(jié)尾的文件都經(jīng)過fastcgi處理,而在php.ini的配置文件中也有一句:

cgi.force_redirect = 1

表明,所有php程序安全地強制轉(zhuǎn)向交給cgi處理。

但在windows中,本地127.0.0.1:9000怎樣與php-cgi聯(lián)系的呢?!答案是增加一個php-cgi進程,用它來監(jiān)聽127.0.0.1:9000。通過控制器命令:

RunHiddenConsole.exe D:/www/php/php-cgi.exe  -b 127.0.0.1:9000 -c C:/WINDOWS/php.ini

我們就可以在啟動windows時,開啟一個php-cgi.exe進程監(jiān)聽來自127.0.0.1:9000 的請求。在dos命令下打開netstat –a就可以看到本地計算機下的9000端口處于listening狀態(tài)(也就是空置,如果沒有發(fā)送任何請求的話)。

好了,該說說在php中使用file_get_contents()、curl()、fopen()函數(shù)訪問localhost時為什么不能返回結(jié)果。我們再來試驗在index.php中加入file_get_contents(‘http://127.0.0.1/phpinfo.php’) 語句向phpinfo.php發(fā)送一個請求,這時瀏覽器中的狀態(tài)指示一直在打轉(zhuǎn),表示它一直在工作中。打開Dos中的netstat命令,可以看到本地的9000端口的狀態(tài)為:ESTABLISHED,表示該進程在聯(lián)機處理中。實際上,這里我們已經(jīng)同時向nginx發(fā)送了兩個基于http的php請求,一個是解析index.php,而另一個是phpinfo.php,這樣矛盾就出來了,因為我們的windows系統(tǒng)只加載了一個http進程,因此,它無法同時處理兩個php請求,它只能先處理第一個請求(index.php),而index.php卻又在等待phpinfo.php處理結(jié)果,phpinfo.php沒人幫它處理請求,因為它一直在等待index.php釋放結(jié)束信號,因此,造成了程序的阻塞狀態(tài),陷入了死循環(huán)。所以我們就看到了瀏覽器的狀態(tài)指示一直在打轉(zhuǎn)。Curl()與fopen函數(shù)的原因也相同。

二、解決方法

找到了原因,我們也就有了解決辦法。

一是,向系統(tǒng)增加一個http請求,當(dāng)一個php-cig內(nèi)要加載另一個請求時,它能夠分配其它http處理額外的php請求。這時需給另一個http sever分配不同的端口,比如8080。nginx的案例如下:

http {  
    server {  
        listen          80;  
        server_name     127.0.0.1;  
        location / {  
            index index.php;  
            root  /web/www/htdocs;  
        }  
    }  
    server {  
        listen          8080;  
        server_name     127.0.0.1;  
        location / {  
            index index.html;  
            root  /web/www/htdocs;  
        }  
    }  
    include    /opt/nginx/conf/vhosts/php.conf;  
}

這樣,端口80與8080可以分別處理不同的程序,比如:
test.php

 echo file_get_contents('http://localhost:8080/phpinfo.php');

當(dāng)然,在*unix下有更多選擇,比如fork。

另外提醒下,網(wǎng)上有人說,通過去掉地址中的http://協(xié)議標記,而使用相對地址就規(guī)避函數(shù)的檢查,實際情況是不是這樣呢?!當(dāng)在index.php中使用file_get_contents(‘phpinfo.php’); 時,我們可以看到函數(shù)輸出了phpinfo.php的源代碼,相當(dāng)于file_get_contents(‘file:c:wwwphpinfo.php’); ,它實際上只是讀取你的文本內(nèi)容,因為file_get_contents()函數(shù)首先是處理file協(xié)議的,而curl則直接報錯無法解析。因此這些人純粹是不學(xué)無術(shù)的騙子。

還有人提出修改hosts文件,增加localhost www.xxx.com影射關(guān)系,函數(shù)通過www.xxx.com訪問本地php,這其實也是不治本的偏方,因為這只是方便計算機的dns解析,最終www.xxx.com交給127.0.0.1,而后者交給唯一http,還是阻塞。

相關(guān)推薦:

file_get_contents函數(shù)不能使用的解決方法

PHP連接Nginx服務(wù)器并解析Nginx日志的方法

以上就是php服務(wù)nginx不能使用file_get_contents的解決方法的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護的網(wǎng)站。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 亚洲成人动漫在线| 每日在线观看av| 欧美 日韩 国产 激情| 欧美激情成人网| 日本在线播放一区二区| 裸体裸乳免费看| 尤物网站在线看| 色欲色香天天天综合网www| 欧美三级午夜理伦三级| 97在线国产视频| 国产资源在线视频| 在线观看免费av网址| 天堂8在线天堂资源bt| 国产一级做a爰片久久| 福利在线小视频| 妺妺窝人体色www在线观看| 无码日韩人妻精品久久蜜桃| ijzzijzzij亚洲大全| 91精品一区二区三区四区| 在线视频一二三区| 欧美午夜小视频| 午夜视频在线瓜伦| 国产一区二区在线观看免费视频| 亚洲免费av网| 亚洲精品手机在线观看| 国产精品嫩草影视| avav在线播放| 欧美爱爱视频网站| 成年女人18级毛片毛片免费 | 日韩中文字幕二区| 中文字幕66页| 一卡二卡三卡视频| av网站在线不卡| 亚洲老女人av| 很污的网站在线观看| 欧美三级理论片| 欧美黄网在线观看| 国产精品亚洲αv天堂无码| 少妇激情一区二区三区| 日本男女交配视频| 鲁一鲁一鲁一鲁一av| 国产成人久久婷婷精品流白浆| 日本免费观看网站| 久草免费福利在线| 中文字幕第22页| 性欧美在线视频| www国产精品内射老熟女| 久久久九九九热| 日本a在线免费观看| 手机精品视频在线| 国产97色在线 | 日韩| 日韩国产成人无码av毛片| 污污的视频免费| 国产熟人av一二三区| 777777av| 天堂…中文在线最新版在线| 男女啪啪的视频| 中文字幕 日韩 欧美| 亚洲国产精品成人天堂| 日韩精品久久一区二区| 国产麻豆电影在线观看| 亚洲一区二区三区四区五区xx| 国产亚洲综合视频| 中文字幕日韩综合| 一区二区三区韩国| 一级黄色香蕉视频| 日本一本二本在线观看| 波多野结衣在线免费观看| 精品久久久久av| 妞干网在线免费视频| 波多野结衣综合网| 国产美女网站在线观看| 黄色成人在线看| 久久久999免费视频| av免费播放网址| 欧美激情成人网| 欧美成人三级在线播放| 日本黄色福利视频| 天天色天天干天天色| a级黄色片网站| 全黄性性激高免费视频| 欧美牲交a欧美牲交aⅴ免费下载| 国内外成人免费激情视频| 国产午夜福利视频在线观看| 日本中文字幕高清| 久久人人爽人人片| 国产不卡一区二区视频| 日韩在线xxx| 亚洲 激情 在线| 午夜福利123| 婷婷五月综合缴情在线视频| 免费裸体美女网站| 久久免费看毛片| 国产精品专区在线| 激情五月俺来也| 992tv快乐视频| 国产成人三级视频| 每日在线更新av| 在线观看日本www| 成年人观看网站| 成人性生交视频免费观看| 给我免费播放片在线观看| 日本人69视频| 国产免费黄色小视频| 91视频福利网| 欧美综合在线观看视频| 小泽玛利亚av在线| 粉色视频免费看| 97av视频在线观看| 欧美中日韩在线| 在线成人免费av| av免费在线播放网站| 日韩精品免费一区| 欧美在线a视频| 无码日韩人妻精品久久蜜桃| 黄色一级视频片| 日本一道在线观看| 亚洲av无日韩毛片久久| 性chinese极品按摩| 国产精品wwwww| 国产69精品久久久久999小说| 午夜两性免费视频| 久草在在线视频| 欧美 国产 小说 另类| 日韩avxxx| 9久久9毛片又大又硬又粗| av在线免费观看国产| 欧美美女黄色网| 日韩成人午夜影院| 51xx午夜影福利| 国产精品jizz在线观看老狼| 国产成人黄色网址| 最新天堂在线视频| 911av视频| 国内精品国产三级国产99| 麻豆md0077饥渴少妇| 四虎精品欧美一区二区免费| aaaaaaaa毛片| 亚洲乱码日产精品bd在线观看| 9色视频在线观看| av在线播放天堂| av免费播放网址| 日本成人中文字幕在线| 日本免费色视频| 4444在线观看| 男人日女人下面视频| 热久久精品免费视频| 手机看片一级片| 黄色影视在线观看| 日本www在线视频| 天天操天天爱天天爽| 久久久国产精华液999999| 在线无限看免费粉色视频| av 日韩 人妻 黑人 综合 无码| 可以看毛片的网址| 国产欧美在线一区| 男人午夜视频在线观看| 国产91沈先生在线播放| 中文字幕欧美人妻精品一区| 色姑娘综合天天| av天堂永久资源网| 国产精品12p| 人妻无码视频一区二区三区| 色爽爽爽爽爽爽爽爽| 欧美日韩在线一| www.色.com| 超碰网在线观看| 日韩一级片一区二区| 精品久久久久av| 女人床在线观看| 日韩在线不卡一区| 成人综合视频在线| 天天爱天天做天天操| 男操女免费网站| 国产午夜伦鲁鲁| 男女啪啪免费观看| 亚洲涩涩在线观看| 少妇性饥渴无码a区免费| 老汉色影院首页| 91福利免费观看| 免费涩涩18网站入口| 日韩精品一区二区三区久久| 日韩欧美一级在线| 久久久久久久高清| 亚洲视频在线观看一区二区三区| 人妻夜夜添夜夜无码av| 欧美精品一区二区性色a+v| 在线观看av网页| 婷婷丁香激情网| 999精品网站| 国产精品免费成人| 欧美a在线视频| 乱妇乱女熟妇熟女网站| 男人天堂av片| 欧美图片激情小说| 91丨porny丨探花| 欧美亚洲日本一区二区三区| 日本十八禁视频无遮挡| 国产深夜男女无套内射| 亚欧无线一线二线三线区别|