中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php runtime、http web中rewrite是什么

發布時間:2020-11-12 10:56:25 來源:億速云 閱讀:175 作者:小新 欄目:編程語言

小編給大家分享一下php runtime、http web中rewrite是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

本文針對函數計算的 php runtime web 相關運用開發, 提供一個簡單實現url rewrite的方案,在介紹方案之前,我們先看看相關的幾個概念: 偽靜態頁面,動態頁面,rewrite.

偽靜態

靜態網頁

比如xxx網站上放了一個abc.html文件,你想訪問它就直接輸入xxx. com/abc.html。Web服務器看到這樣的地址就直接找到這個文件輸出給客戶端。

動態網頁

假如你想做一個顯示當前時間的頁面,那么就可以寫個PHP文件,然后訪問xxx. com/abc.php。Web服務器看到這樣的地址,找到abc.php這個文件,會交給PHP執行后返回給客戶端。而動態網頁往往要輸入參數,所以地址就變成xxx. com/abc.php?a=1&b=2。

搜索引擎比較煩這種帶問號的動態網頁,因為參數可以隨便加,而返回內容卻不變,所以會對這種網頁降權。于是有了mod_rewrite,它可以重新映射地址。

rewrite

比如當前這個頁面的地址 http://www.xxx.com/post/20153311,Web服務器收到請求后會重新映射為 www.xxx.com/post.php?id=20153311,然后再執行那個PHP程序。(以上網址均為假設)這樣,在內部不改變的情況下,對外呈現出來的網址變成了沒有問號的象靜態網頁的網址一樣。于是有人給起了個名字叫“偽靜態”。其實也沒什么偽的,就是沒有問號的靜態網址,讓搜索引擎舒服點而已。

函數計算 php runtime 簡單實現 rewrite 的一種方法

先以簡單的nginx 中的一個簡單的 rewrite 為例:

location ~ ^/(\w+)$ {
    rewrite /index.php?sub=$1;
}
location ~ ^/post/(\w+)/(\d+)$ {
    rewrite /post.php?class=$1&id=$2;
}

php url rewrite 簡單實現

<?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;

執行輸出結果:

/post.php?class=literatrue&id=34
/index.php?sub=admin

因此在使用 php runtime的時候,根據收到請求的uri(假設是/post/literatrue/34), 執行 rewrite_urls 函數(rewrite 規則填寫在這個函數的 $in $out 中), 然后將 rewrite 后的 uri (/post.php?class=literatrue&id=34) 作為調用 fcPhpCgiProxy.requestPhpCgi 函數時,傳入參數 $fastCgiParams 的一對 key-value

看完了這篇文章,相信你對php runtime、http web中rewrite是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五华县| 承德市| 通辽市| 盐山县| 张北县| 道真| 金堂县| 太保市| 高唐县| 文化| 江达县| 宜丰县| 田东县| 尉犁县| 邛崃市| 民勤县| 昌江| 讷河市| 竹山县| 营山县| 平凉市| 贵南县| 千阳县| 太白县| 阳朔县| 东莞市| 长泰县| 舒兰市| 门头沟区| 卓尼县| 和平县| 锡林郭勒盟| 姜堰市| 策勒县| 中江县| 九台市| 金阳县| 南和县| 衡阳市| 周至县| 晋城|