LINUX.ORG.RU

Настройка lighttpd

 , ,


0

1

Решил потыкать lighttpd. Тестовые .html работают. Запускают проект yii2 - страница открывается, но все .css, .js и прочее ищется не там, где надо. Вместо project/web/css/some.css он пытается искать сразу /css/some.css, по сути на одном уровне с каталогом project.

Для апача написан такой .htaccess:

Options +FollowSymLinks

IndexIgnore */*

RewriteEngine on

RewriteCond %{REQUEST_URI} !^/(web)

RewriteRule ^assets/(.*)$ /web/assets/$1 [L]
RewriteRule ^css/(.*)$ web/css/$1 [L]
RewriteRule ^js/(.*)$ web/js/$1 [L]
RewriteRule ^images/(.*)$ web/images/$1 [L]
RewriteRule ^img/(.*)$ web/img/$1 [L]
RewriteRule ^fonts/(.*)$ web/fonts/$1 [L]

RewriteRule (.*) /web/$1

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /web/index.php

Гуглил, нашёл про то, что .htaccess не работает с lighttpd. Окей, ищу как перенести. И совсем запутался.

Сейчас вот так:

$HTTP["host"] =~ "localhost\/project" {
url.rewrite-if-not-file = ( "^/(.*?)(\?.+)?$"=>"/index.php/$1?$2" )
server.error-handler-404 = "/index.php"
}

Как добавить правила для .css и прочих?

★★★★

1. Все прописывается тут /etc/lighttpd/lighttpd.conf
2. Включи в этом конфиге модуль rewrite.
3. Добавь нужны правила. Например:

url.rewrite-once = (
    ".*\.(js|ico|gif|jpg|png|css|)$" => "$0",
    "^/.*(\?.*)" => "/index.php$1",
    "" => "/index.php"
)
4. Не забудь сделать force-reload и рестартнуть lighttpd.
</THREAD>

anonymous
()

P.S. 3 звезды а задаешь такие вопросы... Все есть в гугле.
И да, мы не увидели полного конфига lighttpd.conf на пастбейне.

anonymous
()
Ответ на: комментарий от anonymous

P.S. 3 звезды а задаешь такие вопросы... Все есть в гугле.

Да, есть. Но я не могу понять шаблон. Похожий на мой вариант не нашёл. А раз не могу понять - не могу сделать.

ekzotech ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.