2017-06-14 52 views
2

我有一個工作重寫規則,用於重寫任何頁面字面網址:.htacess重寫規則的類別/頁CMS

RewriteRule ^(.+)$ index.php?page=$1 [QSA,L] 

的問題是我想補充第1頁& = $類= $ 2和轉換它... ...顯然/分類/頁

我嘗試這樣做,但它似乎並沒有工作:

RewriteRule ^([^/]+)/([^/]+)$ index.php?page=$1&category=$2 [QSA,L] 

我要指出,我會小號直到喜歡能夠訪問頁面沒有類別 - 即/登錄或/約應該去index.php?page =關於例如

任何提示在正確的方向將不勝感激。

回答

0

感謝所有的捐款......

因爲我需要同時迎合/頁和/category/page...I落得這樣做的:

RewriteRule ^([0-9a-zA-Z_\-][^/]+)$ index.php?page=$1 [N] 
RewriteRule ^([0-9a-zA-Z_\-]+)/([0-9a-zA-Z_\-]+)$ index.php?category=$1&page=$2 [L] 

但是,這只是一半的解決方案,因爲我需要修改我的PHP來檢查類別是否設置,併發送一個404,如果它不匹配。否則/invalid_category/valid_page仍然可以工作。

以上所有的想法都將我推向了正確的方向,謝謝。

1

試試這個

#https://www.example.com/index.php?category=9&page=CBSE `#https://www.example.com/category/page/CBSE` 


Method One: 

    #use this code for generate new url 

RewriteRule ^index/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ index.php?category=$1&page=$2 [NC,L] 

    Method Two : 

    RewriteRule ^index/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ index.php?category=$1&page=$2 


    Note :Hit Your Url index.php?category=$1&page=$2 to convert $i & $2 Create Dynamic Url Your Id Bases 
+0

非常感謝...會給它一個去。 – Funktion

1

下面,我們指示Apache來不看目錄或文件試試。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/([^/]+)$ index.php?page=$1&category=$2 [QSA,L] 
+0

會試一下,謝謝。 – Funktion

1

這會爲你工作。

RewriteEngine On 

RewriteRule ^([^/]*)/([^/]*)$ /index.php?category=$1&page=$2 [L] 

如果您想要輕鬆生成重寫URL,那麼會有很多在線重寫url生成器。

+0

有趣的是從來沒有搜索過。一定會檢查出來。 – Funktion

+0

如果我們想訪問/登錄例如什麼?或者沒有分類的頁面? – Funktion

+0

爲此,您可以添加另一條路線,例如您爲產品添加的路線。但是,如果您爲產品重寫網址添加後綴,則會感覺更好,因此您可以保留其他路徑。例如:對於產品重寫網址,您可以添加產品/類別/頁面等後綴。 –