Привет, ребята, я хотел опробовать SSL на своем сервере, поэтому решил создать несколько самозаверяющих SSL-сертификатов, как описано Вот. После перехода в document-root
, firefox действительно позволил мне принять сертификат и прочее. Но когда я действительно попытался получить доступ к файлам в test
каталог, он продолжал бросать 404. Если бы я переключил его на http вместо https, это сработало.
Я проверил access.log, и он показал следующее:
my.ip server.ip - [05/Jan/2010:01:33:08 +0100] "GET /test/index.html HTTP/1.1" 404 345 "-" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6"
Таким образом, похоже, что, хотя я запрашиваю как https, он запрашивает файл как http. Мой document-root
в lighttpd.conf есть /var/www
, но для раздела ssl я установил его как /var/www/test
, может быть тут конфликт? Должен ли я сделать их отдельными каталогами?
Я также пробовал сделать перенаправление, чтобы, предположительно, http-запросы в тестовый каталог отправлялись как https, но я не думаю, что это работает, возможно, я сделал это неправильно.
Вот соответствующая информация из моего файла lighttpd.conf, я был бы признателен за любую помощь, которую вы можете оказать. Спасибо.
$SERVER["socket"] == "some.ip:443" {
server.document-root = "/var/www/test/"
var.basedir = "/var/www/test/"
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/ssl/some.ip/server.pem"
}
$HTTP["scheme"] == "http" {
url.redirect = ("^/(test.*)" => "https://some.ip/$1")
}
Файл /var/www/test/test/index.html
существует? Если нет, то доступ /test/index.html
с docroot из /var/www/test
будет правильно выбрасывать 404. Попробуйте сохранить все одинаковым между vhosts HTTP и HTTPS и работать оттуда.