① php偽靜態原理
如果你的網站伺服器支持ISAPI_Rewrite,用httpd.ini放置在根目錄下,httpd.ini內容如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RewriteRule /index.html /index.php
這樣訪問index.html就先當於是在訪問index.php
RewriteRule /index_id-(.+)\.html$ /index.php?id=$1
如:index.php?id=2
用index_id-2.html就相當於是在訪問index.php?id=2
如果是apache服務品,規則是放置在.htaccess裡面的,語法稍有不同,原理是差不多的!
來個匿名先 - -
② php偽靜態
RewriteEngine On
RewriteCond %{REQUEST FILENAME} -s [OR]
RewriteCond %{REQUEST FILENAME} -l [OR]
RewriteCond %{REQUEST FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
修改掉你的 RewriteEngine On
③ php偽靜態這么寫
首先你要開啟偽靜態規則
這個如果是apache的話 網路一下就行了
規則我這里寫個不知道正確不 需要測試
RewriteEngine on
RewriteRule ^list\.php\?/q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D\.html$ /list.php?q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D [L,NC]
RewriteRule ^list\.php\-%E7%BE%8E%E5%A5%B3+%E4%BF%9D\.html$ /list.php?q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D [L,NC]
④ php怎麼配置偽靜態
第一步:找到apache的配置文件httpd.conf 按照下面配置
第三步:
在網站根目錄直接建一個.htaccess文件 這裡面是寫偽靜態規則的。就想php的正則表達式
但語法和php正則略有不同,你可以直接到網上搜索偽靜態正則。這個文件可以用記事本創建直接保存文件名為.htaccess 記住文件名字第一個字元是英文的點。。祝你好運,不會call我
⑤ PHP本地如何實現偽靜態頁面
Apache的 mod_rewrite是比較強大的,在進行網站建設時,可以通過這個模塊來實現偽靜態。
主要步驟如下: 1.檢測Apache是否開啟mod_rewrite功能 可以通過php提供的phpinfo()函數查看環境配置,找到「Loaded Moles」,其中列出了所有apache2handler已經開啟的模塊,如果裡麵包括「mod_rewrite」,則已經支持,不再需要繼續設置。如果沒有開啟「mod_rewrite」,則打開目錄 apache目錄下的「/apache/conf/」 ,找到 httpd.conf 文件,再找到「LoadMole rewrite_mole」,將前面的」#」號刪除即表示取用該功能。 如果沒有查找到「LoadMole」 區域,可以在最後一行加入「LoadMole rewrite_mole ,moles/mod_rewrite.so」(獨佔一行),之後重啟apache伺服器。再通過phpinfo()函數查看環境配置就有「mod_rewrite」為項了.。
2.讓apache伺服器支持.htaccess 如何讓自己的本地APACHE伺服器支持:「htaccess」呢? 只需修改apache的httpd.conf設置就可以讓 APACHE支持「.htaccess」了。打開 APACHE目錄的CONF目錄下的httpd.conf文件,找到: Options FollowSymLinks AllowOverride None 改為 Options FollowSymLinks AllowOverride All 就行了。
3.建立.htaccess 文件 建立.htaccess文件時要注意,不能直接建,方法是通過記事本中的另存為菜單,在文件名窗口輸入:「.htaccess」,然後點擊保存。
4.rewrite規則學習 在新建.htaccess文件之後,就在裡面寫入以下內容: RewriteEngine on #rewriteengine為重寫引擎開關on為開啟off為關閉 RewriteRule ([0-9]{1,})$index.php?id=$1 在這里,RewriteRule是重寫規則,是用正則表達式的句子,([0-9]{1,})表示由數字組成的,$表示結束標志,表示以數字結束!如果要實現偽靜態頁面,規則如下: RewriteEngine on RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2 在為個正則表達式中,([a-zA-Z]{1,})-([0-9]{1,}).html$是規則,index.php?action=$1&id=$2是要替換的格式,$1代表第1括弧匹配的值,$2代表第二個括弧的值,如此類推! 測試PHP腳本如下: index.php文件中的代碼如下: echo 『你的Action值為:』 . $_GET['action']; echo 『 』; echo 『ID值為:』 . $_GET['id']; ?>
在瀏覽器地址欄輸入: localhost/page-18.html 輸出的是: 你的Action值為:page ID值為:18
⑥ PHP網站如何實現網頁偽靜態或靜態
偽靜態 實際是伺服器的設置,php實現靜態,就是用php生成靜態頁,可以考慮用php的smarty 模板引擎
⑦ php偽靜態規則
前面的是偽靜的地址,後面隔開的就是真實的地址了.
^/(.*?)/ /category.php?name=$1
用小括弧括起來的第幾個後面的參數$n,就顯示他的原值了
^/([a-z]*)/([a-z]*)/([a-z]*)/ /category.php?p1=$1&p2=$2&p3=$3
這樣該明白了吧...括弧里寫的就是正則表達式.參數是前後對應的.
⑧ 什麼叫php偽靜態
mod_rewrite是Apache的一個非常強大的功能,它可以實現偽靜態頁面。下面我詳細說說它的使用方法
1.檢測Apache是否支持mod_rewrite
通過php提供的phpinfo()函數查看環境配置,通過Ctrl+F查找到「Loaded Moles」,其中列出了所有apache2handler已經開啟的模塊,如果裡麵包括「mod_rewrite」,則已經支持,不再需要繼續設置。
如果沒有開啟「mod_rewrite」,則打開目錄 您的apache安裝目錄「/apache/conf/」 下的 httpd.conf 文件,通過Ctrl+F查找到「LoadMole rewrite_mole」,將前面的」#」號刪除即可。
如果沒有查找到,則到「LoadMole」 區域,在最後一行加入「LoadMole rewrite_mole ,moles/mod_rewrite.so」(必選獨佔一行),然後重啟apache伺服器即可。
2.讓apache伺服器支持.htaccess
如何讓自己的本地APACHE伺服器支持」.htaccess」呢?其實只要簡單修改一下apache的httpd.conf設置就可以讓 APACHE支 持.htaccess了。打開httpd.conf文件(在那裡? APACHE目錄的CONF目錄裡面),
用文本編輯器打開後,查找
Options FollowSymLinks
AllowOverride None
改為
Options FollowSymLinks
AllowOverride All
就可以了。
3.建立.htaccess 文件
有1種最簡單的方法建立.htaccess文件:
用記事本 打開,點擊文件–另存為,在文件名窗口輸入」.htaccess」,注意是整個綠色部分,
也就是包含英文引號,然後點擊保存就行了。
4.rewrite規則學習
我們新建一個.htaccess文件之後,就在裡面寫入以下內容:
RewriteEngine on #rewriteengine為重寫引擎開關on為開啟off為關閉
RewriteRule ([0-9]{1,})$index.php?id=$1
我講解一下RewriteRule:RewriteRule是重寫規則,支持正則表達式的,上面的([0-9]{1,})是指由數
字組成的,$是結束標志,說明是以數字結束!
好吧,現在我們可以實現偽靜態頁面了,寫下一下的規則:
RewriteEngine on
RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2
([a-zA-Z]{1,})-([0-9]{1,}).html$是規則,index.php?action=$1&id=$2是要替換的格式,$1代表第
一個括弧匹配的值,$2代表第二個,如此類推!!
我們寫一個處理的PHP腳本:
index.php
PHP代碼
echo 『你的Action是:』 . $_GET['action'];
echo 『
』;
echo 『你的ID是:』 . $_GET['id'];
?>
好了,我們現在在瀏覽器中輸入:
localhost/page-18.html
輸出的是:
你的Action是:page
你的ID是:18
⑨ php 偽靜態學習
其實很多php框架都支持偽靜態,你可以看看CI(codeigniter)的代碼,中文文檔也是相當的全,希望你能成功!