本文目錄一覽:
誰知道用php如何得到偽靜態後的url地址啊,求高手解答。
$_SERVER[‘PATH_INFO’] 能取得 /10/2010 你可以看看手冊關於$_SERVER 的參數
php偽靜態如何獲取地址欄url
程序偽靜態後,搜索引擎又收錄了之前的大量動態地址,如何處理呢?
你可能以為設置301就可以了,但似乎301更搜索引擎更新過來也是需要相當一段時間,而搜索到以前的動態地址,訪問還是有點不好,畢竟還是希望訪問靜態地址,這裡就需要在頁面里做一下判斷了。
首先,用了php內置函數,因程序偽靜態了,發現取得的都是真實的url地址,和顯示的url根本是兩樣。
網上找了很久,都沒有找到辦法。問題實再是很棘手。
無意中看到一個asp的例子,其中包含:http_x_rewrite_url,於是用php試了下,沒想到卻可以獲取到地址欄的地址,至此問題解決。
例子,php偽靜態如何獲取地址欄url。
代碼示例:
?php
if (strstr($_server[“http_x_rewrite_url”], “.php”) { //判斷是否包含.php的地址。
header(“http/1.1 301 moved permanently”);
header(“location: “); //跳轉到新的靜態地址。
exit;
}
//只適用於windows的服務器,liunx則需要用 $_server[‘request_uri’]來獲取
if (strstr($_server[‘request_uri’],”.php”) { //判斷是否包含.php的地址。
header(“http/1.1 301 moved permanently”);
header(“location: “); //跳轉到新的靜態地址。
exit;
//只要輸入以前的動態地址都會以301方式轉到新的靜態地址。
?
php如何實現網頁靜態
一、靜態化的優點:
1有利於搜索引擎收錄網站頁面的信息:搜索引擎更喜歡靜態的,更變於抓取,搜索引擎SEO排名會更容易提高。
2靜態網頁化網頁穩定
3可以提高網頁加載速度
4減輕服務器負擔,瀏覽器不需要頻發調用數據庫。
5數據庫出錯不會影響正常訪問
二、偽靜態
PHP偽靜態:是利用Apache mod_rewite實現url重寫的方法
改寫訪問地址,能夠通過URL的PATHINFO模式來改動它。讓它看上去更像一個靜態頁面。從而有更大的幾率被搜索引擎抓取和收錄,僅是對搜索引擎比較友好,偽靜態化
三、純靜態化
純靜態化,就是生成HTML文件的方式,我們須要開啟PHP自帶的緩存機制,即ob_start來開啟緩存。而且在ob_start之前不能有不論什麼輸出,否則運行失敗,然後我們用ob_get_contents函數來獲取緩存中的內容,該函數會返回一個字符串。第三個函數就是ob_end_clean,它用來清空緩存中的內容而且關閉,成功返回True,失敗返回False。
?php
if(file_exists(“match.html”) (time()-filemtime(“match.html”))300)
{
//如果存在對應的靜態文件,則直接訪問
require_once(“match.html”);
}else{
//這裡用數組來仿真數據庫操作,現實一般都是操作數據庫得到對應數據
$student = array(“huangxing”,”chenyuwei”,’xufei’,’zhangjingwen’,’xuepei’);
ob_start();
//載入模板
require_once(“muban.php”);
file_put_contents(“match.html”,ob_get_clean());
require_once(‘match.html’);
}
PHP 獲取當前URL網址里的一個變量,偽靜態,求方法!
這個你得把重寫規則發出來。不過說不定你看一下自己就明白了
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/251674.html