10/10/2018, 11:07

đau đầu vì htaccess

mình có file htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>

vì trang mình còn có thêm cả phân trang nữa nên
bây h mình muốn thêm &page=$3 ở cuối thì làm ntnao? mình đã thử làm là
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/page-(.*)/? /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>

nhưng nó không chạy ai giúp mình với!
vietsol.net viết 13:08 ngày 10/10/2018
Bạn thử sửa lại như bên dưới thử nhé

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/page-(.*)/?$ /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>

[=========> Bổ sung bài viết <=========]

Không được thì thử thêm cách này:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/page-([0-9]+)/?$ /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>
khatmau90 viết 13:17 ngày 10/10/2018
bạn ơi cả 2 cách đều không được !! cách thứ 2 được nhưng nó lại không xem được css không biết vì sao !! mọi người giúp mình với

[=========> Bổ sung bài viết <=========]

huhu không ai giúp mình a hjxhjx
vietsol.net viết 13:07 ngày 10/10/2018
Bạn cho mình website coi thử nhé.
ktakta viết 13:07 ngày 10/10/2018
thử cái này xem
Code:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/p([a-z0-9_!,\-]+)(/?)$ /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)(/?) /index.php?option=$1&p=$2 [L]
mình cũng đang dùng cách này cho http://gamesao.com/baiviet/7/36/p2
duyuoc viết 13:18 ngày 10/10/2018
Như này cho đơn giản này bạn .

RewriteEngine On
RewriteBase /


RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^.*$ - [L]
RewriteRule ^(.*).html$ index.php?params=$1 [L]

Khi bạn bắt biến thì bắt 1 biến duy nhất là biến "params" , nó có dạng a/b/c/d/... , tách biến đó thông qua dấu "/" (tách thế nào thì tùy các bạn ).

a/b/c/d/ <=> option=$1&p=$2&page=$3 [L] =>option=a;p=b;page=c;... :d .

Chúc bạn thành công .
interboy viết 13:07 ngày 10/10/2018
Regular expression!
Bạn này chuẩn đấy.
Thử coi!

Được gửi bởi vietsol.net
Bạn thử sửa lại như bên dưới thử nhé

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/page-(.*)/?$ /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>

[=========> Bổ sung bài viết <=========]

Không được thì thử thêm cách này:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/page-([0-9]+)/?$ /index.php?option=$1&p=$2&page=$3 [L]
RewriteRule ^(.*)/(.*)/? /index.php?option=$1&p=$2 [L]
</IfModule>
Bài liên quan
0