Bocs, jobb nevet nem talaltam. apache alatt meg van oldva, hogy a kulon user alatt futo virtualhostok "beemelnek" egy kulso konyvtarat.
Konkretan, ha meghivom az
http://xy.hu/filemaganer/ programot vagy az
http://nm.hu/filemaganer/ programot, akkor a fast-cgi egyik esetben a xy.hu, masik esetben a nm.hu userrel fut es olvassa be a tobbi konyvtartol fuggetlen "fielmanager" konyvtarat. Valahoyg igy:
apache include /etc/httpd/conf.d/*
cat /etc/httpd/conf.d/filemanager.conf
Alias /fileamanager/ /var/www/_filemanager/
ls /var/www/*
/var/www/xy.hu/...
/var/www/nm.hu/...
/var/www/_filemanager/...
Gyonyoruen mukodik, amelyik oldalon meghivjak, ott nyujtja a funkciokat.
Itt az apache-bol a php normal fastcgi wrapperen keresztul fut.
Ugyanezt nginx/fpm php alatt mar nem tudtam megoldani.
Az meg a kisebbik baj, hogy nem tudom "altalanosan" include-olni (bar jo lenne), de meg a virtualhostokhoz sem tudom beszurni.
location /FileManager/.
{
# index index.php;
alias /var/www/sites/_filemanager/;.
}
Ha ott egy index.html, beolvassa. Ha index.php lenne (ki van kommentezve), akkor viszont hibat dob:
2013/02/15 11:12:07 [error] 504#0: *4238126 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: n.n.n.n, server: xy.hu, request: "GET /filemanager/ HTTP/1.1", upstream: "fastcgi://unix:/usr/local/php/php-5.3.21/var/run/xy.hu.sock:"
Gondolom, az a gondja, hogy mas user alatt fut a php, mint a vegrehajtand file.
Valami otlet?
- 4119 megtekintés
Hozzászólások
Includedolni nginx alatt is tudsz. Tehát kirakhatod amit akarsz külön fileba.
A fastcgi szerintem nem találja a scriptet. Debugolni meg nem tudom, hogy lehet ezt a részét, ezzel már szívtam én is.
- A hozzászóláshoz be kell jelentkezni
Egen, Include-ra talaltam ezt a location-t a nginx doksijaban (eloszor doksit neztem, aztan google, vegul nyitottam csak itt topicot). Csak sajnos nem mukodott rendesen a config, mar nem tudom miert. Majd visszatereke ra, ha legalabb futtatnom sikerult az include-olt php filet.
hmmm...nem talalja. Koszi, erre nem is gondoltam, aszittem, jogsultsag-problema van.
Volt egy ilyen is:
location ~ /filemanager/.*\.php$ {
if ($fastcgi_script_name ~ /FileManager(/.*\.php)$) {
set $valid_fastcgi_script_name $1;
}
Ez igazan durva volt, mert itt mar a nginx configtest is hibat dobott:
nginx: [emerg] location "/404.html" is outside location "/filemanager/.*\.php$" in /etc/nginx/sites-enabled/xy.hu:44
nginx: configuration file /etc/nginx/nginx.conf test failed
- A hozzászóláshoz be kell jelentkezni
Nahat, 4 oraja irtam es mar a google az elso 20 talaltban hozza az "nginx include" keresesre...
- A hozzászóláshoz be kell jelentkezni
Adj teljes vhost konfigot, szerintem sorrend problemad van. Az nginx bizonyos ertelemben linearisan ertelmezi a konfig fajljat, es szamit a sorrend.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni