Eu não posso lhe dar o porquê, mas lighty não parece gostar da notação parental ..
. Acabei de testar isso e se você especificar o caminho completo (não se incomode em usar server_root
em sua configuração, ele funcionará.
Eu preciso configurar um servidor web simples com PHP no Windows XP que um número de pessoas diferentes usará para testes locais.
Estou usando o LightTPD 1.4.30-4-IPv6-Win32-SSL e o PHP 5.2.
Até agora criei esta estrutura de pastas:
tools/
LightTPD/
htdocs/
PHP/
Eu configurei o PHP como CGI e a raiz do documento como server_root + "/htdocs"
. Ele funciona bem (bem, é lento, mas eu não quero me incomodar com o FastCGI por enquanto :)).
Meu problema é quando tento colocar o htdocs fora da pasta LightTPD, assim:
htdocs/
tools/
LightTPD/
PHP/
Eu atualizo a raiz do documento para server_root + "/../../htdocs"
e enquanto as páginas HTML estáticas funcionam bem , as páginas do PHP param de funcionar (elas retornam um "Nenhum arquivo de entrada especificado"). Eu literalmente apenas altero a raiz do documento, não mudei nada no php.ini ou em qualquer outro lugar. Observe também que deixei todos os valores doc_root
, user_dir
e cgi.force_redirect
nos valores padrão no php.ini e funciona quando o htdocs está dentro do LightTPD, mas não quando eu o movo para fora.
Alguma ideia de por que ele está quebrando?
Aqui está o meu lightTPD.conf:
server.modules = (
"mod_access",
"mod_accesslog",
"mod_alias",
"mod_cgi",
"mod_status",
)
include "variables.conf"
include "mimetype.conf"
# THIS WORKS
server.document-root = server_root + "/htdocs"
# THIS DOESN'T
#server.document-root = server_root + "/../../htdocs"
server.upload-dirs = ( temp_dir )
index-file.names = ( "index.php", "index.pl", "index.cgi", "index.cml",
"index.html", "index.htm", "default.htm" )
server.event-handler = "libev"
url.access-deny = ( "~", ".inc" )
$HTTP["url"] =~ "\.pdf$" {
server.range-requests = "disable"
}
static-file.exclude-extensions = ( ".php", ".pl", ".cgi" )
server.errorlog = server_root + "/logs/error.log"
######### Options that are good to be but not neccesary to be changed #######
dir-listing.activate = "enable"
#### CGI module
cgi.assign = ( ".php" => server_root + "/../PHP/php-cgi.exe" )
status.status-url = "/server-status"
status.config-url = "/server-config"
Eu não posso lhe dar o porquê, mas lighty não parece gostar da notação parental ..
. Acabei de testar isso e se você especificar o caminho completo (não se incomode em usar server_root
em sua configuração, ele funcionará.
Tags php lighttpd web-server