Temat: uhttpd i php

Witam,
Mam zainstalowanego uhttpd, na którym stał luci.Zmieniłem port luci na inny, i na 80 porcie chciałem postawić inną stronę.I jak najbardziej się udało. Ale teraz przydała by się obsługa php, więc doinstalowałem php5 i apacha. Pliki php zamiast wyświetlać strone , pobierają się na dysk. Czy w takiej konfiguracji będzie to działać? czy jakieś zabiegi trzeba poczynić?

pozdrawiam

2

Odp: uhttpd i php

1. jak miałeś uhttpd to po co apache jeszcze do tego?
2. Nie skonfigurowałeś w ogóle ani jednego ani drugiego serwera żeby obsługiwał php, prawda?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: uhttpd i php

ee:) no nie, podpowiesz jak skonfigurować uhttpd?
dopisałem do configu uhttpd

option 'interpreter' '.php=/usr/bin/php-cgi'

ale to chyba nie to..

4

Odp: uhttpd i php

Dokładnie to: http://wiki.openwrt.org/doc/uci/uhttpd

Tylko że wtedy nie jest ci apache potrzebny do niczego.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: uhttpd i php

Cezary, usunąłem apache , został mi uhttpd.
mój\a konfiguracja  uhttpd:

config 'uhttpd' 'main'
    list 'listen_http' '0.0.0.0:1000'
    list 'listen_https' '0.0.0.0:443'
    option 'home' '/www'
    option 'rfc1918_filter' '1'
    option 'cert' '/etc/uhttpd.crt'
    option 'key' '/etc/uhttpd.key'
    option 'cgi_prefix' '/cgi-bin'
    option 'script_timeout' '60'
    option 'network_timeout' '30'
    option 'tcp_keepalive' '1'
    option 'interpreter' '.php=/usr/bin/php-cgi'

config 'cert' 'px5g'
    option 'days' '730'
    option 'bits' '1024'
    option 'country' 'DE'
    option 'state' 'Berlin'
    option 'location' 'Berlin'
    option 'commonname' 'OpenWrt'



config 'uhttpd' 'hdd'
    option 'listen_http' '0.0.0.0:80'
    option 'home' '/www/stronka'
        option 'interpreter' '.php=/usr/bin/php-cgi'

na porcie 1000 mam luci, a stronę w folderze /www/stronka.
jak wpisze adres w przeglądarce pojawia się index of: i moje pliki jak wskaże na http://ip/index.php to zwraca mi "No input file specified. "

jakiś pomysł?

6

Odp: uhttpd i php

/usr/bin/php-cgi /www/stronka/index.php

zrób w konsoli i zobacz co wypisze. Jak będą błędy to najpierw z nimi się uporaj.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: uhttpd i php

Zrobiłem, nie zwróciło żadnego błędu, w konsoli wywalił całą zawartość pliku index.php.
Gdzieś na zagranicznym forum wyczytałem że uhttpd wspiera php dopiero od wersji rc5. Rozumie że jak jest stabilna wersja 10.03.1 to jest ok?
Masz może jakieś pomysły jeszcze?

8

Odp: uhttpd i php

No poczekaj. Jaką zawartość index.php jak miał html wypluć?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: uhttpd i php

hmm, to wypluł

root@OpenWrt:~# /usr/bin/php-cgi /www/stronka/index.php
X-Powered-By: PHP/5.3.6
Content-type: text/html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.or                                                 g/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Language" content="pl">
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<title>Sterownik</title>
<meta name="generator" content="WYSIWYG Web Builder 8 - http://www.wysiwygwebbui                                                 lder.com">
<style type="text/css">
body
{
   background-color: #000000;
   color: #FFFFFF;
   scrollbar-face-color: #D4D0C8;
   scrollbar-arrow-color: #FFFFFF;
   scrollbar-3dlight-color: #D4D0C8;
   scrollbar-darkshadow-color: #404040;
   scrollbar-highlight-color: #FFFFFF;
   scrollbar-shadow-color: #808080;
   scrollbar-track-color: #D4D0C8;
}
</style>
<style type="text/css">
a
{
   color: #C8D7EB;
   text-decoration: underline;
}
a:visited
{
   color: #C8D7EB;
}
a:active
{
   color: #C8D7EB;
}
a:hover
{
   color: #376BAD;
   text-decoration: underline;
}
</style>
<style type="text/css">
#TabMenu1
{
   text-align: left;
   float: left;
   margin: 0;
   width: 100%;
   font-family: "Comic Sans MS";
   font-size: 13px;
   font-weight: normal;
   border-bottom: 1px solid #444444;
   list-style-type: none;
   padding: 15px 0px 4px 10px;
}
#TabMenu1 li
{
   float: left;
}
#TabMenu1 a:link.active, #TabMenu1 a:visited.active, #TabMenu1 a:hover.active
{
   border-bottom: 1px solid #0972A5;
   background-color: #0972A5;
   color: #FFFFFF;
   position: relative;
   font-weight: normal;
   font-style: italic;
   text-decoration: none;
}
#TabMenu1 a:link, #TabMenu1 a:visited
{
   padding: 5px 10px 4px 10px;
   border: 1px solid #444444;
   background-color: #222222;
   color: #EEEEEE;
   margin-right: 3px;
   text-decoration: none;
   border-bottom: none;
}
#TabMenu1 a:hover
{
   background: #003147;
   color: #FFFFFF;
   font-weight: normal;
   text-decoration: underline;
}
#InlineFrame1
{
   border: 1px #666666 solid;
}
#InlineFrame3
{
   border: 1px #C0C0C0 solid;
}
#InlineFrame2
{
   border: 1px #C0C0C0 solid;
}
#InlineFrame4
{
   border: 1px #C0C0C0 solid;
}
</style>
</head>
<body>
<div id="wb_TabMenu1" style="position:absolute;left:25px;top:1px;width:734px;hei                                                 ght:41px;z-index:0;overflow:hidden;">
<ul id="TabMenu1">
<li><a href="./index.php" class="active">Strona glówna</a></li>
<li><a href="./temp.html">Temperatura</a></li>
<li><a href="./piec.php">Sterowanie piecem</a></li>
<li><a href="./in.php">Stan Wejsc</a></li>
<li><a href="./out.php">Stan i zarzadzanie wyjsciami</a></li>
<li><a href="./rrd.php" target="_self">Wykresy</a></li>
</ul>
</div>
<iframe name="Temperatura_na_zewnatrz" id="InlineFrame1" style="position:absolut                                                 e;left:0px;top:50px;width:393px;height:249px;z-index:1;" src="./temp.html" scrol                                                 ling="no" frameborder="0">Twoja przegladarka nie obsluguje wbudowanych ramek lub                                                  jest skonfigurowana, aby ich nie wyswietlac.</iframe>
<iframe name="InlineFrame1" id="InlineFrame3" style="position:absolute;left:1px;                                                 top:310px;width:393px;height:249px;z-index:2;" src="./in.php" scrolling="no" fra                                                 meborder="0">Twoja przegladarka nie obsluguje wbudowanych ramek lub jest skonfig                                                 urowana, aby ich nie wyswietlac.</iframe>
<iframe name="InlineFrame1" id="InlineFrame2" style="position:absolute;left:403p                                                 x;top:50px;width:393px;height:249px;z-index:3;" src="./piec.php" scrolling="no"                                                  frameborder="0">Twoja przegladarka nie obsluguje wbudowanych ramek lub jest skon                                                 figurowana, aby ich nie wyswietlac.</iframe>
<iframe name="InlineFrame1" id="InlineFrame4" style="position:absolute;left:403p                                                 x;top:309px;width:393px;height:249px;z-index:4;" src="./out.php" scrolling="no"                                                  frameborder="0">Twoja przegladarka nie obsluguje wbudowanych ramek lub jest skon                                                 figurowana, aby ich nie wyswietlac.</iframe>
</body>
root@OpenWrt:~#

dokładnie to samo zawiera plik index.php

10

Odp: uhttpd i php

No to html czysty.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: uhttpd i php

ok, brakuje tam kilku skryptów itp , nazwijmy to podkładem, nie zmienia to problemu, teoretycznie powinien wyświetlić strone?

12

Odp: uhttpd i php

Tak jest.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: uhttpd i php

masz jakiś pomysł na "No input file specified. "

14

Odp: uhttpd i php

Pokaż co ci wypisał uhttpd -ala

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: uhttpd i php

nie ma takiej funkcji,

root@OpenWrt:~# uhttpd -ala
uhttpd: invalid option -- a
Usage: uhttpd -p [addr:]port [-h docroot]
        -f              Do not fork to background
        -c file         Configuration file, default is '/etc/httpd.conf'
        -p [addr:]port  Bind to specified address and port, multiple allowed
        -s [addr:]port  Like -p but provide HTTPS on this port
        -C file         ASN.1 server certificate file
        -K file         ASN.1 server private key file
        -h directory    Specify the document root, default is '.'
        -E string       Use given virtual URL as 404 error handler
        -I string       Use given filename as index page for directories
        -S              Do not follow symbolic links outside of the docroot
        -D              Do not allow directory listings, send 403 instead
        -R              Enable RFC1918 filter
        -l string       URL prefix for Lua handler, default is '/lua'
        -L file         Lua handler script, omit to disable Lua
        -x string       URL prefix for CGI handler, default is '/cgi-bin'
        -i .ext=path    Use interpreter at path for files with the given extension
        -t seconds      CGI and Lua script timeout in seconds, default is 60
        -T seconds      Network timeout in seconds, default is 30
        -d string       URL decode given string
        -r string       Specify basic auth realm
        -m string       MD5 crypt given string

16

Odp: uhttpd i php

Zrób ps i zobacz czy uhttpd zostało z opcją -i wywołane.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17 (edytowany przez tipsntrix 2013-03-10 15:39:04)

Odp: uhttpd i php

mam bez -i

root@OpenWrt:~# ps | grep uhttpd
 1665 root       816 S    /usr/sbin/uhttpd -f -h /www -r OpenWrt -x /cgi-bin -t
 1669 root       644 S    /usr/sbin/uhttpd -f -h /www/stronka -r OpenWrt -p 0.0

ale w konfigu jest dodana ta opcja:

config 'uhttpd' 'main'
        list 'listen_http' '0.0.0.0:1000'
        list 'listen_https' '0.0.0.0:443'
        option 'home' '/www'
        option 'rfc1918_filter' '1'
        option 'cert' '/etc/uhttpd.crt'
        option 'key' '/etc/uhttpd.key'
        option 'cgi_prefix' '/cgi-bin'
        option 'script_timeout' '60'
        option 'network_timeout' '30'
        option 'tcp_keepalive' '1'
        option 'interpreter' '.php=/usr/bin/php-cgi'

config 'cert' 'px5g'
        option 'days' '730'
        option 'bits' '1024'
        option 'country' 'DE'
        option 'state' 'Berlin'
        option 'location' 'Berlin'
        option 'commonname' 'OpenWrt'



config 'uhttpd' 'hdd'
        option 'listen_http' '0.0.0.0:80'
        option 'home' '/www/stronka'
        option 'index_file' 'index.php'
        option 'interpreter' '.php=/usr/bin/php-cgi'

18

Odp: uhttpd i php

Masz wynik obcięty i nic nie widzisz

w /proc/1669/cmdline zobacz

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19

Odp: uhttpd i php

hmm nie wiem czy dobrze ale zwróciło mi to

/usr/sbin/uhttpd-f-h/www/stronka-rOpenWrt-p0.0.0.0:80-i.php/usr/bin/php-cgi

20

Odp: uhttpd i php

Czyli interpreter jest wołany.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21 (edytowany przez tipsntrix 2013-03-10 15:53:41)

Odp: uhttpd i php

magia...:( ,może rzeczywiście uhttpd nie wspiera php w tej wersji.. może masz jeszcze jakiś pomysł.
Jak zmienię php na html to działa bez problemu

a może jeszcze jakiś pakiet potrzebny?
to mam :

 opkg list-installed
base-files - 43.32-r29592
busybox - 1.15.3-3.4
chat - 2.4.4-16.1
collectd - 4.10.2-2.1
collectd-mod-cpu - 4.10.2-2.1
collectd-mod-interface - 4.10.2-2.1
collectd-mod-iwinfo - 4.10.2-2.1
collectd-mod-load - 4.10.2-2.1
collectd-mod-logfile - 4.10.2-2.1
collectd-mod-memory - 4.10.2-2.1
collectd-mod-rrdtool - 4.10.2-2.1
collectd-mod-uptime - 4.10.2-2.1
comgt - 0.32-9
coreutils - 8.8-1
coreutils-su - 8.8-1
digitemp - 3.6.0-5
digitemp-usb - 3.6.0-5
dnsmasq - 2.55-6.1
dropbear - 0.53.1-5
fdisk - 2.13.0.1-4
firewall - 2-34.8
glib2 - 2.26.1-2
grub - 0.97-3
hotplug2 - 1.0-beta-3
htop - 0.9-1
iptables - 1.4.6-3.1
iptables-mod-conntrack - 1.4.6-3.1
iptables-mod-nat - 1.4.6-3.1
kernel - 2.6.32.27-1
kmod-3c59x - 2.6.32.27-1
kmod-8139too - 2.6.32.27-1
kmod-crc-ccitt - 2.6.32.27-1
kmod-e100 - 2.6.32.27-1
kmod-e1000 - 2.6.32.27-1
kmod-ipt-conntrack - 2.6.32.27-1
kmod-ipt-core - 2.6.32.27-1
kmod-ipt-nat - 2.6.32.27-1
kmod-ipt-nathelper - 2.6.32.27-1
kmod-libphy - 2.6.32.27-1
kmod-natsemi - 2.6.32.27-1
kmod-ne2k-pci - 2.6.32.27-1
kmod-nls-base - 2.6.32.27-1
kmod-pcnet32 - 2.6.32.27-1
kmod-ppp - 2.6.32.27-1
kmod-pppoe - 2.6.32.27-1
kmod-r8169 - 2.6.32.27-1
kmod-sis900 - 2.6.32.27-1
kmod-tg3 - 2.6.32.27-1
kmod-tun - 2.6.32.27-1
kmod-usb-core - 2.6.32.27-1
kmod-usb-ohci - 2.6.32.27-1
kmod-usb-serial - 2.6.32.27-1
kmod-usb-serial-ftdi - 2.6.32.27-1
kmod-usb-serial-option - 2.6.32.27-1
kmod-usb-storage - 2.6.32.27-1
kmod-usb-storage-extras - 2.6.32.27-1
kmod-usb-uhci - 2.6.32.27-1
kmod-usb2 - 2.6.32.27-1
kmod-via-rhine - 2.6.32.27-1
kmod-via-velocity - 2.6.32.27-1
libapr - 1.4.5-2
libaprutil - 1.3.12-2
libart - 2.3.21-1
libc - 0.9.30.1-43.32
libcyassl - 1.4.0-2
libelf - 0.8.13-1
libexpat - 2.0.1-1
libfreetype - 2.3.12-1
libgcc - 4.1.2-43.32
libiconv - 5
libip4tc - 1.4.6-3.1
libiwinfo - 18
libiwinfo-lua - 18
libltdl - 2.4-1
liblua - 5.1.4-7
liblzo - 2.04-1
libncurses - 5.7-2
libnetsnmp - 5.4.2.1-5
libopenssl - 0.9.8r-1
libpcre - 8.11-2
libpng - 1.2.46-1
libpq - 9.0.1-1
libpthread - 0.9.30.1-43.32
libreadline - 5.2-2
librrd - 1.2.30-1
librrd1 - 1.0.50-1
librt - 0.9.30.1-43.32
libsqlite3 - 3070701-1
libuci - 12012009.7-4
libuci-lua - 12012009.7-4
libusb - 0.1.12-2
libuuid - 1.41.11-1
libxml2 - 2.7.8-1
libxtables - 1.4.6-3.1
lua - 5.1.4-7
luci - 0.10.0-1
luci-app-firewall - 0.10.0-1
luci-app-ntpc - 0.10.0-1
luci-app-openvpn - 0.10.0-1
luci-app-samba - 0.10.0-1
luci-app-statistics - 0.10.0-1
luci-i18n-english - 0.10.0-1
luci-lib-core - 0.10.0-1
luci-lib-ipkg - 0.10.0-1
luci-lib-lmo - 0.10.0-1
luci-lib-nixio - 0.10.0-1
luci-lib-sys - 0.10.0-1
luci-lib-web - 0.10.0-1
luci-mod-admin-core - 0.10.0-1
luci-mod-admin-full - 0.10.0-1
luci-proto-3g - 0.10.0-1
luci-proto-core - 0.10.0-1
luci-proto-ppp - 0.10.0-1
luci-sgi-cgi - 0.10.0-1
luci-ssl - 0.10.0-1
luci-theme-base - 0.10.0-1
luci-theme-openwrt - 0.10.0-1
mc - 4.7.5.2-1
mini-snmpd - 1.2b-3
mtd - 13
nano - 2.2.6-1
ntpclient - 2007_365-4
openvpn - 2.1.4-3
opkg - 576-2
pgsql-server - 9.0.1-1
php5 - 5.3.6-3.3
php5-cgi - 5.3.6-3.3
ppp - 2.4.4-16.1
ppp-mod-pppoe - 2.4.4-16.1
px5g - 1
rrdtool1 - 1.0.50-1
samba3 - 3.0.24-8
uci - 12012009.7-4
udevtrigger - 106-1
uhttpd - 28
uhttpd-mod-tls - 28
zlib - 1.2.3-5

22 (edytowany przez Tekkenmoor 2013-03-10 15:51:04)

Odp: uhttpd i php

W konfigu php musisz podać tą samą ścieżkę do katalogu www co w konfigu uhttpd wink

Sprzęt: Seagate GoFlex Home
OS: OpenWrt 18.06.4
Info: 128MB RAM / 1,2GHz CPU /  USB / sATA / RJ45
Osprzęt: 500GB SATA / LCD DPF 2,4" / USB rt2800

23 (edytowany przez tipsntrix 2013-03-10 16:01:50)

Odp: uhttpd i php

rozumie że chodzi o wpis w tej sekcji:

; Paths and Directories

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
doc_root = "/www:/www/stronka"
user_dir =
extension_dir = "/usr/lib/php"
enable_dl = On
cgi.force_redirect = 0
;cgi.nph = 1
;cgi.redirect_status_env = ;
cgi.fix_pathinfo=1
;fastcgi.impersonate = 1;
;fastcgi.logging = 0
;cgi.rfc2616_headers = 0

jeśli wpis jest poprawny - to nie robi....

24

Odp: uhttpd i php

Masz przykład jak to u mnie jest i działa:
uhttpd:

...
config uhttpd 'hdd'
        option listen_http '0.0.0.0:8080'
        option home '/root/www'
        list interpreter '.php=/usr/bin/php-cgi'
...

/etc/php.ini

...
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
doc_root = "/root/www"
user_dir =
extension_dir = "/usr/lib/php"
enable_dl = On
;cgi.force_redirect = 1
;cgi.nph = 1
;cgi.redirect_status_env = ;
cgi.fix_pathinfo=1
;fastcgi.impersonate = 1;
;fastcgi.logging = 0
;cgi.rfc2616_headers = 0
...
Sprzęt: Seagate GoFlex Home
OS: OpenWrt 18.06.4
Info: 128MB RAM / 1,2GHz CPU /  USB / sATA / RJ45
Osprzęt: 500GB SATA / LCD DPF 2,4" / USB rt2800