Jump to content
m__a__l

KodExplorer на Entware

Recommended Posts

Всем добра!

Очень интересный файловый менеджер с кучей плюшек склепали китайцы https://github.com/kalcaddle/KodExplorer, возникло желание стартануть на роутере, но ни как((

Пробовал по этой статье без БД т.к. не нужна, но на выходе в браузере получаю No input file specified.

Под виндой с пол тычка на IIS заводится.

Подскажите, чего может не хватать?

Share this post


Link to post
Share on other sites

Включить логирование и смотреть на что жалуется. Без напилинга с пол пинка завелся, палкой потыкал в тушку, прикольно.

Share this post


Link to post
Share on other sites
9 минут назад, TheBB сказал:

Включить логирование и смотреть на что жалуется. Без напилинга с пол пинка завелся, палкой потыкал в тушку, прикольно.

подскажите, как корректно полностью переустановить Nginx и PHP включая все конфиги, при этом не переустанавливая Entware полностью?

Грешу, что ранее были выполнены настройки типа:

        location ~ \.php$ {
        #    root           html;
        root            /opt/share/nginx/KodExplorer;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

и 

#!/bin/sh

PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PORT=9000
BIN=/opt/bin/php-fcgi

start() {
        $BIN -b $PORT &
}

stop() {
        killall php-fcgi
}

case $1 in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
                stop
                start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        ;;
esac

под ними запускалось, но далее первого шага не шло, т.е. явно чего то в php не хватало, решил сделать по выше указанной статье в итоге совсем затык((

вот и думаю, как теперь корректно переустановить Nginx и PHP включая все конфиги.

Edited by m__a__l

Share this post


Link to post
Share on other sites
opkg remove --autoremove $pkg_name

где $pkg_name -- имя пакета

Share this post


Link to post
Share on other sites
5 минут назад, TheBB сказал:

opkg remove --autoremove $pkg_name

где $pkg_name -- имя пакета

а можно шаблоном сразу запихнуть на удаление все пакеты Nginx и PHP включая все конфиги?

И если не сложно, как корректно руками посмотреть установленные пакеты, на крайняк по 1 удалю. (смущает, что могу не определить нужно ли удалять пакет или нет)

Share this post


Link to post
Share on other sites

`opkg` - справка

`opkg list-installed` - список установленных пакетов

`opkg remove --autoremov ...` - удаление указанных пакетов, включая зависимые

...

  • Thanks 1

Share this post


Link to post
Share on other sites

Не было времени потестировать все с нуля, вот сейчас добрался и похоже можно было не переставлять пакеты.

Подскажите, почему так происходит:

указываю путь к директории, в которой размещена директория с KodExplorer, в строке браузера указываю после имени /kodexplorer, все хорошо, ресурс грузится.

Скрытый текст

http {
    include       mime.types;
    default_type  application/octet-stream;
    index index.php index.html index.htm;

    sendfile        on;
    keepalive_timeout  65;
    gzip on;

    server {
    listen 88;

#    root   /opt/share/www;
# root   /tmp/mnt/2D68A65C9765BEE0/extweb/kodexplorer;
 root   /tmp/mnt/2D68A65C9765BEE0/extweb;

    location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info   ^(.+?\.php)(/.*)$;
            if (!-f $document_root$fastcgi_script_name) {
         return 404;
      }
#    root          /opt/share/www;
#    root          /tmp/mnt/2D68A65C9765BEE0/extweb/kodexplorer;
 root   /tmp/mnt/2D68A65C9765BEE0/extweb;
#          fastcgi_pass   unix:/opt/var/run/php7-fpm.sock;
           fastcgi_pass   unix:/opt/var/run/php-fcgi.sock;
           fastcgi_index  index.php;
           include        fastcgi_params;
        }
    }
}

image.png.d3108dd2a3516ab7a9a61b20cf41ad6b.png

но стоит прописать полный путь к kodexplorer, получаю сообщение:

Скрытый текст

http {
    include       mime.types;
    default_type  application/octet-stream;
    index index.php index.html index.htm;

    sendfile        on;
    keepalive_timeout  65;
    gzip on;

    server {
    listen 88;

#    root   /opt/share/www;
 root   /tmp/mnt/2D68A65C9765BEE0/extweb/kodexplorer;
# root   /tmp/mnt/2D68A65C9765BEE0/extweb;

    location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info   ^(.+?\.php)(/.*)$;
            if (!-f $document_root$fastcgi_script_name) {
         return 404;
      }
#    root          /opt/share/www;
    root          /tmp/mnt/2D68A65C9765BEE0/extweb/kodexplorer;
# root   /tmp/mnt/2D68A65C9765BEE0/extweb;
#          fastcgi_pass   unix:/opt/var/run/php7-fpm.sock;
           fastcgi_pass   unix:/opt/var/run/php-fcgi.sock;
           fastcgi_index  index.php;
           include        fastcgi_params;
        }
    }
}

image.png.49d8bab4b14d89c492d8ae30788c3ba5.png

 

Не могу понять, почему веб сервер не хочет отправлять по прямому пути?

Что не так делаю?

Догадываюсь, что можно запихнуть в корень index.html с редиректом на более глубокий уровень, но это ведь совсем не нужный костыль.

 

Share this post


Link to post
Share on other sites

а `/opt/etc/php.ini` `dok_root = "/opt/share/www"`?

Share this post


Link to post
Share on other sites
9 минут назад, TheBB сказал:

а `/opt/etc/php.ini` `dok_root = "/opt/share/www"`?

совершенно верно.

т.е. не получится настройки для разных сайтов делать в корень каждому своей директории сайта?

Share this post


Link to post
Share on other sites

Чем `/opt/share/www/site1 ; /opt/share/www/site2 ; /opt/share/www/siteN` не устраивает?

Share this post


Link to post
Share on other sites

я видимо не корректно задал вопрос.

к примеру у меня есть несколько сайтов (4-го уровня), прописал через KeenDNS на роутере:

site1.mydns.keenetik.link (смотрит на 81 порт)

site2.mydns.keenetik.link (смотрит на 82 порт)

siteN.mydns.keenetik.link (смотрит на 8N порт)

Каждый на своем порту и у каждого свой путь в /opt/etc/nginx/nginx.conf

можно ли как то для каждого сайта прописать `dok_root = `? что бы каждый сайт отрабатывал по введенному имени без дописывания в конце строки в браузере '/site1 ; /site2 ; /siteN '

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...