<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>

            php的apache偽靜態

            時間:2025-10-18 05:51:14 php語言

            php的apache偽靜態

              導語:現有的在線網上視頻教程對偽靜態的講解比較簡單,但不全面,小編以一個真實案例來講解偽靜態的制作過程。歡迎參考!

              步驟開始:

              (1) 啟用rewrite模塊,在默認情況下,沒有啟用

              修改httpd.conf文件,啟動rewrite模塊

              去掉LoadModule rewrite_module modules/mod_rewrite.so前的#號即可

              (2) 配置我們的虛擬主機

              httpd.conf 打開虛擬主機的配置文件

              # Virtual hosts

              Include conf/extra/httpd-vhosts.conf

              修改 httpd-vhost.conf

              <VirtualHost *:80>

              DocumentRoot "F:/Appserv/www/xh"

              ServerName xh.com

              <Directory "F:/Appserv/www/xh">

              AllowOverride All

              </Directory>

              </VirtualHost>

              我是用的是appserv集成環境,安裝在F盤

              (3) 在hosts文件中,配置ip和主機的對應關系

              127.0.0.1 xh.com

              (4) 在F:/Appserv/www/xh目錄下建立.htaccess文件,寫入

              <IfModule mod_rewrite.c>

              RewriteEngine on

              RewriteRule ^([0-9]+).html$   index.php/Index/index/p/$1

              RewriteRule ^([A-Z])_(d+).html$   index.php/List/index/first_letter/$1/p/$2

              RewriteRule ^([A-Z]).html$   index.php/List/index/first_letter/$1

              </IfModule>

              解釋一下上面那段話,

              訪問2.html  =>  index.php/Index/index/p/2

              D_2.html  =>  index.php/List/index/first_letter/D/p/2

              D.html  =>  index.php/List/index/first_letter/D

              2.html表示全部歇后語的第二頁,D_2.html表示以字母D打頭的歇后語的第二頁,而單獨一個字母D就表示以D打頭的以第一頁

              好了問題來了,大部分教程只告訴你怎么在.htaccess中重寫url,那么我們要讓用戶點擊時顯示的也是靜態網址,這樣表意清晰,目錄結構簡單,對用戶對搜索引擎都比較友好,我們是不會在地址欄里頭一個一個的敲入靜態網址的,這個問題該怎么解決呢?

              很簡單,只需對模板中的分頁標簽變量{$page}做一個簡單的正則替換,如下,

              首頁列表分頁的替換:

              <div class="pagination"><?php echo preg_replace('/index.php/Index/index/p/(d+).html/','$1.html',$page); ?></div>

              字母列表分頁的替換:<div class="pagination"><?php echo preg_replace('/index.php/List/index/first_letter/([A-Z])/p/(d+).html/','$1_$2.html',$page); ?></div>

              循環26個字母的改寫(去掉沒有結果的那些字母,只需做一個簡單的鏈接改寫,改成 字母.html 即可,無需正則替換)

              for($i=97;$i<=122;$i++) {

              $c = strtoupper(chr($i));

              if($c==I || $c==U || $c==V) continue;

              echo '<li><a href="' . $c . '.html">'.$c.'</a></li>';

              }

              好了,偽靜態就這么簡單,我以這個簡單的例子闡述了偽靜態從頭到尾的過程,方便大家學習和交流,目的在于針對多數教程的一個補充,需要完成更復雜任務的同學,請自行深入研究偽靜態吧!


            【php的apache偽靜態】相關文章:

            PHP偽靜態的方法03-06

            apache服務器偽靜態教程11-11

            php簡單偽靜態實例03-07

            PHP偽靜態的幾種方法08-05

            php實現偽靜態的方法實例11-30

            PHP簡單的偽靜態URL機制實現11-12

            PHP運行于Apache 模塊方式12-02

            php靜態成員變量12-04

            Java UrlRewriter偽靜態技術運用分析09-09

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院