Я использую .htaccess
, чтобы удалить index.php
из URL и использовать его параметры с /
(косая черта).
Например, до:
example.com/index.php?id=posts
после
example.com/posts
Я также использую .htaccess
, чтобы разрешить /
(косая черта) в таких параметрах, как: example.com/posts/mypost
, где posts / mypost
- это параметр index.php
!
Но моя проблема в том, что когда я получаю доступ к параметру с помощью /
(косая черта), например: example.com/posts/mypost
, он загружает страницу, но без загрузки CSS, он работает только, если я использую без /
, как в example.com/posts
или просто строка без баров! Но если я УДАЛЮ эту часть кода .htaccess
:
RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule ^(.*)index.php$ /$1 [R=301,L]
Параметр с /
работает через косую черту, однако используется index.php?Id=
, например: example.com/index.php?id=posts/mypost
. Но это не то, что я хочу, я хочу удалить index.php
и использовать его параметры с /
косой чертой!
Мой .htaccess
полный код:
#remove index.php
RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule ^(.*)index.php$ /$1 [R=301,L]
#use parameters without " ?id= "
RewriteEngine on
RewriteRule ^/?index.php$ - [L,NC]
RewriteRule ^([a-zA-Z0-9.]+)?$ index.php?id=$1 [QSA,L]
#allow " / " slash
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !-d
RewriteRule (.*) index.php?id=$1 [L,NS]