A. PHP+Apache配置偽靜態的問題。
在網站的根目錄創建一個.htaccess這樣的文件
然後你寫上偽靜態的UEL規則
RewriteEngineOn
RewriteRule^(.*)content-([0-9]+)-([0-9]+)-([0-9]+).html$$1/index.php?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$$1/index.php?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule^(.*)list-([0-9]+)-([0-9]+).html$$1/index.php?m=content&c=index&a=lists&catid=$2&page=$3
這樣就配置完成了
PS:偽靜態的URL規則可以在網上找的
B. apache的偽靜態
apache 開啟 urlrewrite 沒有
C. 如何讓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」,注意是整個綠色部分,也就是包含英文引號,然後點擊保存就行了。
(2)進入cmd命令 窗口,通過cd切換當剛建立htaccess.txt文件的文件夾,然後輸入命令:rename htaccess.txt .htaccess ,然後點擊鍵盤Enter鍵即可。
(3)通過ftp連接htaccess.txt所在文件夾,通過ftp軟體重命名。北京恆博教育網站建設培訓
4.rewrite規則學習
我們新建一個.htaccess文件之後,就在裡面寫入以下內容:
RewriteEngine on #rewriteengine為重寫引擎開關on為開啟off為關閉
RewriteRule ([0-9]{1,})$index.php?id=$1
我講解一下RewriteRule:RewriteRule是重寫規則,支持正則表達式的,上面的([0-9]{1,})是指由數字組成的,$是結束標志,說明是以數字結束!
好吧,現在我們可以實現偽靜態頁面了,寫下一下的規則:
<IfMole mod_rewrite.c
RewriteEngine on
RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2
</IfMole
([a-zA-Z]{1,})-([0-9]{1,}).html$是規則,index.php?action=$1&id=$2是要替換的格式,$1代表第一個括弧匹配的值,$2代表第二個,如此類推!!
我們寫一個處理的PHP腳本:index.phpPHP代碼<?phpecho 『你的Action是:』 . $_GET['action'];
echo 『/』;
echo 『你的ID是:』 . $_GET['id'];?好了,我們現在在瀏覽器中輸入:
localhost/ view-12. html輸出的是:你的Action是:view
D. 什麼是偽靜態,以及apache 如何實現偽靜態
1,文件存檔,靜態化頁面存在伺服器,偽靜態化調用資料庫虛擬生成的(實際還是動態)
2,性能優勢,在用戶訪問量大的時候,靜態頁面比偽靜態更具優勢。
3,安全性能,基本上差不多都是靜態化狀態
4,實際適用,偽靜態比靜態化更靈活,部分沒法靜態化的,都可以偽靜態化。
靜態網頁就是,比如網站上放了一個neiyi.html文件,你想訪問它就直接輸入chaodiquan. com/neiyi.html。Web伺服器看到這樣的地址就直接找到這個文件輸出給客戶端。
動態網頁就是,假如你想做一個顯示當前時間的頁面,那麼就可以寫個PHP文件,然後訪問chaodiquan. com/neiyi.php。Web伺服器看到這樣的地址,找到neiyi.php這個文件,會交給PHP執行後返回給客戶端。而動態網頁往往要輸入參數,所以地址就變成chaodiquan. com/neyi.php?a=1&b=2。因為參數可以隨便加,而返回內容卻不變
於是有了mod_rewrite,它可以重新映射地址。比如當前這個頁面的地址question/20153311,Web伺服器收到請求後會重新映射為question.php?n=20153311,然後再執行那個PHP程序。(以上網址均為假設)這樣,在內部不改變的情況下,對外呈現出來的網址變成了沒有問號的象靜態網頁的網址一樣。
於是有人給起了個名字叫「偽靜態」。其實也沒什麼偽的,就是沒有問號的靜態網址,希望可以幫助到你的哈
E. apache偽靜態怎麼設置
我來講給你聽:
1、首先在根目錄下新建一個 .htaccess 的文件
2、然後再裡面寫上:
RewriteEngine On
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]
3、再在 index.php 中寫上 <?php echo $_SERVER['REQUEST_URI']; ?>
4、運行,你會有驚喜的發現(成功了)。
5、運用 PHP 的相關函數分析 URI 再查詢資料庫,這樣偽靜態就做好了。
6、我的博客就是通過 PHP Apache 偽靜態做出來的,是 domain/postname 的這種形式。
7、你也可以看我的博客再參考一下:
希望對你有幫助
F. 如何去除網頁裡面的apache的偽靜態
IIS自身並不支持偽靜態,何來去除?
如果是程序里的連接是按照偽靜態生成的,那隻能修改程序
G. 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
修改httpd.conf文件
Options FollowSymLinks
AllowOverride None
改為
Options FollowSymLinks
AllowOverride All
注意:除了要設置上面的地方以後,還得設置一下下面這個(網上很多資料都沒有講到這一塊),否則你將會配製失敗, 把 DocumentRoot 後面的參數改為你本地網站的目錄 例如你網站的根目錄為 D:/web/ 則得設置為 DocumentRoot "D:/web/" 也就是修改當前目錄
此步驟設置好後也得重啟apache伺服器才能生效
3.建立.htaccess 文件
新建 htaccess.txt
用記事本 打開,點擊文件–另存為,在文件名窗口輸入」.htaccess」,然後點擊保存。此文件得保存在網站的根目錄
4.填寫網站偽靜態規則 (需要 了解 正則表達式)
<IfMole mod_rewrite.c>
RewriteEngine on
RewriteRule index.html$ index.php
RewriteRule index-([1-9]+[0-9]*).html$ index.php?p=$1
</IfMole>
希望能夠幫到你和網上的其它朋友,曾經我也在上面絞盡腦汁。
H. apache偽靜態後,圖片就載入不出來,這個問題要怎麼才能解決啊
<IfMole mod_mime.c>
addType image/jpeg jpg jpeg
addType image/png png
addType image/gif gif
</IfMole>
I. Apache偽靜態html(URL Rewrite)設置法
我來講給你聽:
1、首先在根目錄下新建一個 .htaccess 的文件
2、然後再裡面寫上:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
3、再在 index.php 中寫上 <?php echo $_SERVER['REQUEST_URI']; ?>
4、運行,你會有驚喜的發現(成功了)。
5、運用 PHP 的相關函數分析 URI 再查詢資料庫,這樣偽靜態就做好了。
6、我的博客就是通過 PHP Apache 偽靜態做出來的,是 domain/postname 的這種形式。
7、你也可以看我的博客再參考一下: http://blog.huachen.me/
J. 如何在windows下Apache環境開啟htaccess偽靜態功能
修改Apache
1、打開Apache conf目錄下的httpd.conf
2、找到
4、若你對域名綁定進行了配置,請找到extra/httpd-vhosts.conf,打開編輯
同樣找到AllowOverride,並把後面的參數從None全部改成All
5、結束上面的配置後,重啟你的Apache
配置.htaccess
由於Windows環境並不支持只有後綴名的文件名,我們可以通過多種方法創建.htaccess文件
1、使用FTP上傳
2、創建一個bat文件,寫上以下內容:
echo a> .htaccess
接著就會在這個bat的運行目錄創建一個.htaccess文件