我想讓網址更適合我的網站用於SEO目的。.htaccess重寫規則改變動態網址
目前頁面顯示如下:
SITE/[number]-[page name].html
我想獲得頁面中的格式像下面顯示。
example 1.
SITE/[page name].html
或
example 2.
SITE/[page name]-[number].html
(我寧願離開頁面數出來,如果可能的話,像例如1,但如果它必須包含我想它在網址的結尾處,就像上面的第二個例子)。
我在.htaccess文件中有以下規則。
RewriteRule ^([0-9]+)-(.*)$ site_page.php?page=$1
我最大的問題是,我已經嘗試了很多方法讓重寫來做我所需要的。 我是一個完全新手,當涉及到重寫。
我已經改變了重寫以下沒有喜悅。
RewriteRule ^(.*)-([0-9]+)$ site_page.php?page=$1
RewriteRule ^(.*)-([0-9])$ site_page.php?page=$1
RewriteRule ^(.*+)-([0-9]+)$ site_page.php?page=$1
RewriteRule ^([.*]+)-([0-9]+)$ site_page.php?page=$1
上面我試過的是保留頁面id號碼,我最好是完全去掉數字。
我在setting.php文件中有以下幾行,用於控制網站如何創建相關鏈接。它會按照我的意願顯示它們。但我得到一個404錯誤,因爲我認爲重寫規則沒有顯示我期望它顯示的內容。
// non seo url
$setup_url['normal']['resource'] = "$url_base/site_page.php?page=[number]";
// seo url
$setup_url['seo']['resource'] = "$url_base/[number]-[name].html";
我看了很多關於國防部重寫規則的文章,似乎沒有得到任何地方。任何幫助將不勝感激。
非常感謝。 馬克。
¿什麼是輸入的URL(顯示在瀏覽器的地址欄中)和什麼是映射的URL?這在你的問題中還不清楚,因爲重寫規則映射到PHP腳本,而你的URL示例映射到HTML頁面。 –
映射的網址結束例如SITE/site_page.php?page = 3主要文件是.php .html只是模板文件(smarty),它只是顯示.html而不是url/ – Mark