Я хотел бы использовать Lighttpd и PHP для создания легкого автономного веб-сервера в Windows. Вчера скачал все последние сборки и через час все заработало.
Сегодня я изменился server.document-root из каталог-сервера + "/ htdocs" к каталог-сервера + "/../htdocs" и соответствующим образом скорректировал структуру каталогов. После перезапуска всего, я вижу «Не указан входной файл» в веб-браузере, когда я пытаюсь получить доступ к страницам php.
Вот мои файлы конфигурации. Конечно, я пробовал играть с cgi.fix_pathinfo и fastcgi.server но я не могу найти правильные настройки. Любые идеи?
php.ini
cgi.fix_pathinfo=1
extension_dir = .\ext
extension = php_pdo_sqlite.dll
date.timezone = UTC
log_errors = On
error_log = ..\logs\php_error.log
lighttpd.conf
## modules to load
# at least mod_access and mod_accesslog should be loaded
server.modules = (
"mod_access",
"mod_accesslog",
"mod_fastcgi",
# "mod_cgi",
"mod_status"
)
#### include important configuration files
include "variables.conf"
include "mimetype.conf"
## a static document-root
## works fine
server.document-root = server_root + "/htdocs"
## causes "No input file specified"
#server.document-root = server_root + "/../htdocs"
# extensions that should not be handle via static-file transfer
static-file.exclude-extensions = ( ".php" )
## virtual directory listings
dir-listing.activate = "disable"
#directory for file uploads
server.upload-dirs = ( temp_dir )
# files to check for if .../ is requested
index-file.names = ( "index.php", "index.html" )
## set the event-handler (read the performance section in the manual)
server.event-handler = "libev"
## deny access the file-extensions
url.access-deny = ( "~", ".inc", ".htaccess" )
## disable range request for PDF files
$HTTP["url"] =~ "\.pdf$" {
server.range-requests = "disable"
}
#### status module
status.status-url = "/server-status"
status.config-url = "/server-config"
#### fastcgi module
fastcgi.server = ( ".php" => ("localhost" => ("host" => "127.0.0.1", "port" => 521, "broken-scriptfilename" => "enable" )))
#cgi.assign = ( ".php" => "C:/development/tds/PHP/php-cgi.exe" )
эта структура каталогов работает
c:\base_dir
\php
\lightTPD
\htdocs
это структура каталогов, которую я пытаюсь достичь
c:\base_dir
\htdocs
\php
\lightTPD
проверьте, что ваш doc_root установлен прямо в php.ini
doc_root = C:\base_dir\htdocs
это все, что мне нужно
если вам не нужен абсолютный путь, вы можете отключить его, и он также должен работать.
; doc_root = ""
просто попробовал это на моем без проблем
Сейчас я использую обходной путь.
mklink /J htdocs ..\htdocs
Если у кого-то есть лучшее решение, я был бы рад его услышать.