利用.htaccess檔案實現URL靜態化解決方案

來源:互聯網
上載者:User
利用.htaccess檔案實現URL靜態化
利用.htaccess檔案實現URL靜態化
問題描述如下:
我現在想實現如下功能:
未靜態化的URL:http://inetassistant.com/tasks.php?id=28&title=Wordpress
實現靜態化後的URL:http://inetassistant.com/tasks/28/Wordpress.html
1.
.htaccess檔案我放在網站根目錄下面,內容如下:

Options -Indexes
RewriteEngine On
RewriteBase /
RewriteRule ^/tasks/([0-9]+)/([A-Za-z]+).html$ /tasks.php?id=$1&title=$2

php檔案裡面連結是這樣寫的:
Wordpress

可是在瀏覽器裡面輸入
http://www.XXX.com/tasks/28/Wordpress.html不能訪問

http://www.XXX.com/tasks.php/28/Wordpress.html卻能夠訪問(但是不能夠顯示對應的內容)

2.另外的情況是:
RewriteRule ^/tasks.php/([0-9]+)/([A-Za-z]+).html$ /tasks.php?id=$1&title=$2 這樣寫

Wordpress 這樣寫

我在點選連結的時候不能夠將http://www.XXX.com/tasks.php/28/Wordpress.html能夠訪問,但是沒有對應的內容,
補充說明的是:像28,Wordpress其實都是動態從資料庫裡面擷取的,目的是迴圈輸出標題,然後點擊標題顯示相應的文章內容
請高手幫忙解答一下對於這兩種情況問題分別出現在哪裡

------解決方案--------------------
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/tasks/([0-9]+)/([A-Za-z]+)\.html$
RewriteRule ^.+$ tasks1.php?id=%1&title=%2 [L]

我的apache環境估計加了什麼配置
當tasks 和我的檔案名稱相同的時候,就匹配不到,我把tasks.php換成task1.php就行了.

這個要放在task1.php所在的檔案夾.
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.