Есть страница.
usluga.php
На основе передаваемого параметра формируется страница с описание и тд,затем этот параметр превращается в ЧПУ,в итоге все это дело выглядит примерно так
usluga/nameusl
И теперь на этой страницы не работают ссылки и подключения файлов (css/js) приходиться их полностью прописывать
<link href="www.sitename.com/css/style.css" type="text/css" rel="stylesheet" media="all">
можно ли как то делать так,чтобы ссылки вида
<link href="css/style.css" type="text/css" rel="stylesheet" media="all">
работали
Если в сделать вместо
usluga/nameusl
usluga-nameusl
Все как надо работает
.htaccess
ErrorDocument 404 index.php
RewriteEngine on
RewriteRule ^usluga/([^/]+)/?$ usluga.php?link=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)$ $1.html
<FilesMatch ".(gif|jpg|jpeg|png)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
Страница usluga/nameusl оказывается на уровень дальше от хоста, чем страница usluga.
А значит, либо надо ставить две точки и слеш перед адресом CSS (но тогда не будет корректно работать "простая" страница usluga, либо
Прописать для адреса CSS файла следующее:
<?php echo "http://" . $_SERVER['SERVER_NAME'] . "/css/style.css"; ?>
Тогда адрес CSS файла не будет зависеть от места, из которого его вызывают.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей