小編給大家分享一下php runtime、http web中rewrite是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)建站2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元兗州做網(wǎng)站,已為上家服務(wù),為兗州各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220
本文針對函數(shù)計(jì)算的 php runtime web 相關(guān)運(yùn)用開發(fā), 提供一個簡單實(shí)現(xiàn)url rewrite的方案,在介紹方案之前,我們先看看相關(guān)的幾個概念: 偽靜態(tài)頁面,動態(tài)頁面,rewrite.
偽靜態(tài)
靜態(tài)網(wǎng)頁
比如xxx網(wǎng)站上放了一個abc.html文件,你想訪問它就直接輸入xxx. com/abc.html。Web服務(wù)器看到這樣的地址就直接找到這個文件輸出給客戶端。
動態(tài)網(wǎng)頁
假如你想做一個顯示當(dāng)前時間的頁面,那么就可以寫個PHP文件,然后訪問xxx. com/abc.php。Web服務(wù)器看到這樣的地址,找到abc.php這個文件,會交給PHP執(zhí)行后返回給客戶端。而動態(tài)網(wǎng)頁往往要輸入?yún)?shù),所以地址就變成xxx. com/abc.php?a=1&b=2。
搜索引擎比較煩這種帶問號的動態(tài)網(wǎng)頁,因?yàn)閰?shù)可以隨便加,而返回內(nèi)容卻不變,所以會對這種網(wǎng)頁降權(quán)。于是有了mod_rewrite,它可以重新映射地址。
rewrite
比如當(dāng)前這個頁面的地址 http://www.xxx.com/post/20153311,Web服務(wù)器收到請求后會重新映射為 www.xxx.com/post.php?id=20153311,然后再執(zhí)行那個PHP程序。(以上網(wǎng)址均為假設(shè))這樣,在內(nèi)部不改變的情況下,對外呈現(xiàn)出來的網(wǎng)址變成了沒有問號的象靜態(tài)網(wǎng)頁的網(wǎng)址一樣。于是有人給起了個名字叫“偽靜態(tài)”。其實(shí)也沒什么偽的,就是沒有問號的靜態(tài)網(wǎng)址,讓搜索引擎舒服點(diǎn)而已。
函數(shù)計(jì)算 php runtime 簡單實(shí)現(xiàn) rewrite 的一種方法
先以簡單的nginx 中的一個簡單的 rewrite 為例:
location ~ ^/(\w+)$ { rewrite /index.php?sub=$1; } location ~ ^/post/(\w+)/(\d+)$ { rewrite /post.php?class=$1&id=$2; }
php url rewrite 簡單實(shí)現(xiàn)
<?php function rewrite_urls($s) { $in = array( '|^/post/(\\w+)/(\\d+)$|', '|^/(\\w+)$|' ); $out = array( '/post.php?class=$1&id=$2', '/index.php?sub=$1', ); return preg_replace($in, $out, $s); } $post_url = '/post/literatrue/34'; echo rewrite_urls($post_url) .PHP_EOL; $index_url = '/admin'; echo rewrite_urls($index_url) .PHP_EOL;
執(zhí)行輸出結(jié)果:
/post.php?class=literatrue&id=34 /index.php?sub=admin
因此在使用 php runtime
的時候,根據(jù)收到請求的uri
(假設(shè)是/post/literatrue/34
), 執(zhí)行 rewrite_urls
函數(shù)(rewrite
規(guī)則填寫在這個函數(shù)的 $in
和 $out
中), 然后將 rewrite
后的 uri (/post.php?class=literatrue&id=34)
作為調(diào)用 fcPhpCgiProxy.requestPhpCgi
函數(shù)時,傳入?yún)?shù) $fastCgiParams
的一對 key-value
。
看完了這篇文章,相信你對php runtime、http web中rewrite是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享題目:phpruntime、httpweb中rewrite是什么
網(wǎng)站網(wǎng)址:http://chinadenli.net/article0/gogiio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、云服務(wù)器、定制開發(fā)、網(wǎng)站制作、網(wǎng)站改版、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)