10/10/2018, 10:44
Xin giúp đỡ về Rewrite URL cho Bo-Blog
Trước đây đã từng hỏi tại ddth ruì mà chả ai giúp cả...
Trong Bo-Blog có Chức năng rewrite link liên kết nâng cao cho Apache , nó sẽ thay http://domain.com/read.php?43154 thành http://domain.com/post/43154 với 43154 là ID bài viết.
Bây giờ mình muốn đường link sẽ được rewrite lại thành:
hoặc
thì phải sửa lại file .htaccess như thế nào ???
Dưới đây là nội dung file .htaccess mà Bo-Blog cho sẵn để rewrite, mong các pác giúp em:
Nếu có thể, xin viết lại hoàn chỉnh 1 file .htaccess cho em với nhé, vì em gà về cái vụ này lắm ạ, xin cám ơn.
Trong Bo-Blog có Chức năng rewrite link liên kết nâng cao cho Apache , nó sẽ thay http://domain.com/read.php?43154 thành http://domain.com/post/43154 với 43154 là ID bài viết.
Bây giờ mình muốn đường link sẽ được rewrite lại thành:
http://domain.com/post/tieu-de-bai-viet-43154
http://domain.com/post/43154-tieu-de-bai-viet
Dưới đây là nội dung file .htaccess mà Bo-Blog cho sẵn để rewrite, mong các pác giúp em:
Nếu có thể, xin viết lại hoàn chỉnh 1 file .htaccess cho em với nhé, vì em gà về cái vụ này lắm ạ, xin cám ơn.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
#New rules since 2.1.0 beta 2
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [L]
RewriteRule ^post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ read.php?entryid=$1&page=$2&part=$3 [QSA,L]
RewriteRule ^page/([0-9]+)/([0-9]+)/?$ index.php?mode=$1&page=$2 [QSA,L]
RewriteRule ^starred/([0-9]+)/?([0-9]+)?/?$ star.php?mode=$1&page=$2 [QSA,L]
RewriteRule ^category/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=category_$1&mode=$2&page=$3 [QSA,L]
RewriteRule ^archiver/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=archive&cm=$1&cy=$2&mode=$3&page=$4 [QSA,L]
RewriteRule ^date/([0-9]+)/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=showday_$1-$2-$3&mode=$4&page=$5 [QSA,L]
RewriteRule ^user/([0-9]+)/?$ view.php?go=user_$1 [L]
RewriteRule ^tags/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ tag.php?tag=$1&mode=$2&page=$3 [QSA,L]
RewriteRule ^component/id/([0-9]+)/?$ page.php?pageid=$1 [L]
RewriteRule ^component/([^/]+)/?$ page.php?pagealias=$1 [L]
#Force redirection for old rules
RewriteRule ^post/([0-9]+).htm$ post/$1/ [R=301,L]
RewriteRule ^post/([0-9]+)\_([0-9]+).htm$ post/$1/$2/ [R=301,L]
RewriteRule ^post/([0-9]+)\_([0-9]+)\_([0-9]+).htm$ post/$1/$2/$3/ [R=301,L]
RewriteRule ^index\_([0-9]+)\_([0-9]+).htm$ page/$1/$2/ [R=301,L]
RewriteRule ^star\_([0-9]+)\_([0-9]+).htm$ starred/$1/$2/ [R=301,L]
RewriteRule ^category\_([0-9]+).htm$ category/$1/ [R=301,L]
RewriteRule ^category\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ category/$1/$2/$3/ [R=301,L]
RewriteRule ^archive\_([0-9]+)\_([0-9]+).htm$ archiver/$1/$2/ [R=301,L]
RewriteRule ^archive\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ archiver/$1/$2/$3/$4/ [R=301,L]
RewriteRule ^showday\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ date/$1/$2/$3/ [R=301,L]
RewriteRule ^showday\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ date/$1/$2/$3/$4/$5/ [R=301,L]
#Customized URL
RewriteRule ^([^/]*).html$ $1/ [R=301,L]
RewriteRule ^([^/|.]*)/?([0-9]+)?/?([0-9]+)?/?$ read.php?blogalias=$1&page=$2&part=$3 [QSA,L]
</IfModule>
RewriteEngine on
RewriteBase /
#New rules since 2.1.0 beta 2
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [L]
RewriteRule ^post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ read.php?entryid=$1&page=$2&part=$3 [QSA,L]
RewriteRule ^page/([0-9]+)/([0-9]+)/?$ index.php?mode=$1&page=$2 [QSA,L]
RewriteRule ^starred/([0-9]+)/?([0-9]+)?/?$ star.php?mode=$1&page=$2 [QSA,L]
RewriteRule ^category/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=category_$1&mode=$2&page=$3 [QSA,L]
RewriteRule ^archiver/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=archive&cm=$1&cy=$2&mode=$3&page=$4 [QSA,L]
RewriteRule ^date/([0-9]+)/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ index.php?go=showday_$1-$2-$3&mode=$4&page=$5 [QSA,L]
RewriteRule ^user/([0-9]+)/?$ view.php?go=user_$1 [L]
RewriteRule ^tags/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ tag.php?tag=$1&mode=$2&page=$3 [QSA,L]
RewriteRule ^component/id/([0-9]+)/?$ page.php?pageid=$1 [L]
RewriteRule ^component/([^/]+)/?$ page.php?pagealias=$1 [L]
#Force redirection for old rules
RewriteRule ^post/([0-9]+).htm$ post/$1/ [R=301,L]
RewriteRule ^post/([0-9]+)\_([0-9]+).htm$ post/$1/$2/ [R=301,L]
RewriteRule ^post/([0-9]+)\_([0-9]+)\_([0-9]+).htm$ post/$1/$2/$3/ [R=301,L]
RewriteRule ^index\_([0-9]+)\_([0-9]+).htm$ page/$1/$2/ [R=301,L]
RewriteRule ^star\_([0-9]+)\_([0-9]+).htm$ starred/$1/$2/ [R=301,L]
RewriteRule ^category\_([0-9]+).htm$ category/$1/ [R=301,L]
RewriteRule ^category\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ category/$1/$2/$3/ [R=301,L]
RewriteRule ^archive\_([0-9]+)\_([0-9]+).htm$ archiver/$1/$2/ [R=301,L]
RewriteRule ^archive\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ archiver/$1/$2/$3/$4/ [R=301,L]
RewriteRule ^showday\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ date/$1/$2/$3/ [R=301,L]
RewriteRule ^showday\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+).htm$ date/$1/$2/$3/$4/$5/ [R=301,L]
#Customized URL
RewriteRule ^([^/]*).html$ $1/ [R=301,L]
RewriteRule ^([^/|.]*)/?([0-9]+)?/?([0-9]+)?/?$ read.php?blogalias=$1&page=$2&part=$3 [QSA,L]
</IfModule>
Bài liên quan
dịch là khớp với một chuỗi URL bắt đầu là post/ sau đó là bất cứ cái gì và kết thúc phải là - rồi theo sau ít nhất là 1 con số, bóc con số đó và chuyển nó vào URL là read.php?entryid=(con số bóc được)
Chọn loại 3
Ví dụ bản của tớ nè: www.cpanel.vn