Перейти к содержанию

Рекомендуемые сообщения

Опубликовано
<?php
echo '<pre>', var_dump(getenv('MAGIC')), '</pre>';

отвечает bool(false)

как его настроить? что бы побороть ошибки. где эту базу брать.

mime_content_type(): Failed identify data 0:bad magic in `(null)'
mime_content_type(): Failed to load magic database.

Опубликовано (изменено)
~ # 
~ # env | grep ^MAG
~ # 
~ # php -i | grep MAGIC
~ # 
~ # export MAGIC="/opt/share/misc/magic"
~ # 
~ # env | grep ^MAG
MAGIC=/opt/share/misc/magic
~ # 
~ # php -i | grep MAGIC
MAGIC => /opt/share/misc/magic
$_SERVER['MAGIC'] => /opt/share/misc/magic
$_ENV['MAGIC'] => /opt/share/misc/magic
~ # 
~ #

---

~ # 
~ # cat fileinfo.php 
<?php
echo '<pre>', var_dump(getenv('MAGIC')), '</pre>';
~ # 
~ # php ./fileinfo.php 
<pre>string(21) "/opt/share/misc/magic"
</pre>~ # 
~ #

 

Изменено пользователем TheBB
add
Опубликовано
8 часов назад, Meccep45 сказал:

где эту базу брать.

opkg install file

-

https://www.php.net/manual/ru/book.fileinfo.php

Цитата

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

 

Опубликовано (изменено)

базу нашёл сам. я не лодырь. export MAGIC="/opt/share/misc/magic" что то не записался. ручонками вписал в \etc\profile

и прописал в php.ini

[mime_magic]
mime_magic.magicfile = "/opt/share/misc/magic"
;mime_magic.debug = On

 

Изменено пользователем Meccep45
Опубликовано
45 минут назад, Meccep45 сказал:

export MAGIC="/opt/share/misc/magic" что то не записался. ручонками вписал в \etc\profile

Ессно, при перезагрузке будет сброшено, да и до входа в систему, окружение другое. Можно экспорт вписать в стартовый скрипт (сервера или php).

49 минут назад, Meccep45 сказал:

и прописал в php.ini

При `opkg install --force-overwrite php7` конфиг будет полностью перезаписан, лучше вписать в свой, напр., `/opt/etc/php7/user.ini` (пользовательский конфиг (user.ini) можно обзывать по своему усмотрению).

Опубликовано

что-то не завелось. и 7 не 8.  как протестировать  встроенный в php? кто шалит приложение, модуль или мои ручонки.  склонен к третьему.

Скрытый текст
2021/07/04 08:28:31 [error] 25715#0: *65 FastCGI sent in stderr: "PHP message: PHP Fatal error: 
Uncaught ValueError: Path cannot be empty in /opt/share/nginx/html/Sources/Subs.php:5617
Stack trace:
#0 /opt/share/nginx/html/Sources/Subs.php(5617): mime_content_type('/opt/share/ngin...')
#1 /opt/share/nginx/html/Sources/Subs.php(5667): get_mime_type('/opt/share/ngin...', true)
#2 /opt/share/nginx/html/Sources/Profile-Modify.php(3530): check_mime_type('/opt/share/ngin...', 'image/', true)
#3 /opt/share/nginx/html/Sources/Profile-Modify.php(822): profileSaveAvatarData('upload')
#4 /opt/share/nginx/html/Sources/Profile.php(725): saveProfileFields()
#5 /opt/share/nginx/html/index.php(187): ModifyProfile()
#6 {main}
  thrown in /opt/share/nginx/html/Sources/Subs.php on line 5617" while reading response header from upstream,
  client: 00.00.00.00, server: 00.00.00.00,
  request: "POST /index.php?action=profile;area=forumprofile;u=1 HTTP/2.0",
  upstream: "fastcgi://unix:/opt/var/run/php8-fpm/php8-fpm.sock:", host: "00.00.00.00",
  referrer: "https://00.00.00.00/index.php?action=profile;area=forumprofile;u=1"

2021/07/04 11:04:28 [error] 25715#0: *301 FastCGI sent in stderr: "PHP message: PHP Fatal error: 
Uncaught ValueError: Path cannot be empty in /opt/share/nginx/html/Sources/Subs.php:5617
Stack trace:
#0 /opt/share/nginx/html/Sources/Subs.php(5617): mime_content_type('/opt/tmp/phphjX...')
#1 /opt/share/nginx/html/Sources/Attachments.php(329): get_mime_type('/opt/tmp/phphjX...', true)
#2 /opt/share/nginx/html/Sources/Attachments.php(201): Attachments->processAttachments()
#3 /opt/share/nginx/html/Sources/Attachments.php(139): Attachments->add()
#4 /opt/share/nginx/html/index.php(187): Attachments->call()
#5 {main}
  thrown in /opt/share/nginx/html/Sources/Subs.php on line 5617" while reading response header from upstream,
  client: 00.00.00.00, server: 00.00.00.00,
  request: "POST /index.php?action=uploadAttach;sa=add;d490270f=de07bc1d1822120817ef6a193a8ea7b1;board=1 HTTP/2.0",
  upstream: "fastcgi://unix:/opt/var/run/php8-fpm/php8-fpm.sock:", host: "00.00.00.00",
  referrer: "https://00.00.00.00/index.php?action=post;topic=1.0;last_msg=1"

 

 

Опубликовано

Что это за проект такой? Где брали php8?

Скрытый текст
~ # 
~ # php fileinfo.php 

Warning: finfo_open(): Failed to load magic database at "(null)" in /opt/root/fileinfo.php on line 2

Fatal error: Uncaught ValueError: Path cannot be empty in /opt/root/fileinfo.php:2
Stack trace:
#0 /opt/root/fileinfo.php(2): finfo_open(16)
#1 {main}
  thrown in /opt/root/fileinfo.php on line 2
~ # 
~ # 
~ # export MAGIC="/opt/share/misc/magic"
~ # 
~ # 
~ # php fileinfo.php 
directory
application/octet-stream
text/x-shellscript
text/plain
text/x-php
text/plain
application/octet-stream
directory
application/gzip
application/gzip
application/gzip
application/gzip
application/x-executable
text/plain
text/plain
application/x-executable
text/plain
application/gzip
application/gzip
text/x-php
application/gzip
application/gzip
text/x-php
text/html
directory
application/gzip
text/x-php
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
text/x-php
application/gzip
application/gzip
application/x-bzip2
text/plain
application/json
directory
directory
directory
directory
application/gzip
application/gzip
application/gzip
directory
directory
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
directory
application/x-empty
application/gzip
~ # 
~ # 
~ # cat fileinfo.php 
<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE); // возвращает mime-тип
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>
~ # 
~ # 
~ # strace -ffff -vvvv -e openat php fileinfo.php 
openat(AT_FDCWD, "/opt/lib/tls/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/lib/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libxml2.so.2", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libpcre2-8.so.0", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/lib/libiconv.so.2", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/etc/localtime", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/opt/bin/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/etc/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/etc/php.ini", O_RDONLY) = 3
openat(AT_FDCWD, "/opt/etc/php8", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 3
openat(AT_FDCWD, "/opt/etc/php8/20_fileinfo.ini", O_RDONLY) = 3
openat(AT_FDCWD, "/opt/lib/php/fileinfo.so", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "fileinfo.php", O_RDONLY) = 3
openat(AT_FDCWD, "/opt/share/misc/magic", O_RDONLY) = 3
openat(AT_FDCWD, "/opt/share/misc/magic", O_RDONLY) = 3
openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 3
openat(AT_FDCWD, "/opt/root/Downloads", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/GeoLiteCity.dat", O_RDONLY) = 3
application/octet-stream
openat(AT_FDCWD, "/opt/root/S80oc", O_RDONLY) = 3
text/x-shellscript
openat(AT_FDCWD, "/opt/root/after.log", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/apc.php", O_RDONLY) = 3
text/x-php
openat(AT_FDCWD, "/opt/root/before.log", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/composer.phar", O_RDONLY) = 3
application/octet-stream
openat(AT_FDCWD, "/opt/root/configuration.yaml", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/coreutils-rs_0.0.2-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/coturn_4.5.2-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/dbus-utils_1.13.18-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/dbus_1.13.18-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/dnsproxy", O_RDONLY) = 3
application/x-executable
openat(AT_FDCWD, "/opt/root/dnsproxy.log", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/dnsproxy_2.log", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/dnsproxy_a", O_RDONLY) = 3
application/x-executable
openat(AT_FDCWD, "/opt/root/entw.txt", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/filebrowser_2.15.0-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/filebrowser_2.15.0-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/fileinfo.php", O_RDONLY) = 3
text/x-php
openat(AT_FDCWD, "/opt/root/gcc_7.4.0-6a_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/gcc_7.4.0-6b_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/geoip.inc", O_RDONLY) = 3
text/x-php
openat(AT_FDCWD, "/opt/root/geoip2.phar", O_RDONLY) = 3
text/html
openat(AT_FDCWD, "/opt/root/hb", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/homeassistant_2021.4.4-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/installer", O_RDONLY) = 3
text/x-php
openat(AT_FDCWD, "/opt/root/libdbus_1.13.18-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/libevent2-extra_2.1.11-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/libndm_1.1.15-1_mipsel-3.4_kn.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/libp11_0.4.11-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/libsocket_2.5.0-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/lua.php", O_RDONLY) = 3
text/x-php
openat(AT_FDCWD, "/opt/root/ndmq_1.0.2-7_mipsel-3.4_kn.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/odoh-client-go_0-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/owncloud-10.5.0.tar.bz2", O_RDONLY) = 3
application/x-bzip2
openat(AT_FDCWD, "/opt/root/owrt.txt", O_RDONLY) = 3
text/plain
openat(AT_FDCWD, "/opt/root/package-lock.json", O_RDONLY) = 3
application/json
openat(AT_FDCWD, "/opt/root/pkg", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/pkg2", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/pkg3", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/pkg4", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/poorbox_1.33.0-2_mipsel-3.4_kn.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/python3-aiohomekit_0.2.61-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/qbittorrent_4.3.4.1-2_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/rust", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/startup", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/stun-client_0.97-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/stunclient_1.2.16-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/stund_0.97-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/stunserver_1.2.16-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/stuntestcode_1.2.16-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
openat(AT_FDCWD, "/opt/root/test-hg", O_RDONLY) = 3
directory
openat(AT_FDCWD, "/opt/root/test.file", O_RDONLY) = 3
application/x-empty
openat(AT_FDCWD, "/opt/root/xupnpd-live_2020-01-25-1_mipsel-3.4.ipk", O_RDONLY) = 3
application/gzip
+++ exited with 0 +++
~ # 

 

 

4 часа назад, Meccep45 сказал:

как протестировать  встроенный в php?

не сисадмин, не сетевик... для проверки беру примеры из (напр.) https://www.php.net/manual/ru/function.finfo-file.php

 

Опубликовано
2 часа назад, Meccep45 сказал:

пытаюсь поставить smf forum. но вся загвоздка в этом модуле.

какую версию, т.к. https://wiki.simplemachines.org/smf/SMF2.0:Requirements_and_recommendations

Цитата

РНР 4.1.0 or higher. Please note that PHP 8 is not supported at this time.

  • Versions of SMF below 2.0.7 will not work on PHP 5.5. If you use PHP 5.5 it is necessary to use SMF 2.0.7 or greater.
  • Versions of SMF from 2.0.16 require a version of PHP between 5.3 and 7.3. If you use PHP 5.3 or lower, it is necessary to use SMF 2.0.13 or lower or SMF 2.0.16 or higher. This is because 2.0.14 and 2.0.15 do not support PHP 5.3. PHP 7.4 is supported by SMF 2.0.17 or higher.

 

Опубликовано
2 часа назад, TheBB сказал:
Цитата

Please note that PHP 8 is not supported at this time.

 

Нас снова обманули...

~ # ls smf*
smf_2-0-18_install.tar.gz       smf_2-0-18_russian-utf8.tar.gz
~ # 
Скрытый текст
~ # 
~ # php -v
PHP 8.0.3 (cli) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.3, Copyright (c) Zend Technologies
~ # 
~ # php -m
[PHP Modules]
Core
date
fileinfo
filter
hash
json
libxml
mysqli
mysqlnd
openssl
pcre
PDO
pdo_mysql
posix
Reflection
session
SPL
standard
zlib

[Zend Modules]

~ # 

 

screen_2021-07-06_17:37:47_smf.png

...
[06-Jul-2021 17:36:03 Europe/Moscow] PHP Deprecated:  Required parameter $table follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:03 Europe/Moscow] PHP Deprecated:  Required parameter $columns follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:03 Europe/Moscow] PHP Deprecated:  Required parameter $data follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:03 Europe/Moscow] PHP Deprecated:  Required parameter $keys follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:09 Europe/Moscow] PHP Deprecated:  Required parameter $table follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:09 Europe/Moscow] PHP Deprecated:  Required parameter $columns follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:09 Europe/Moscow] PHP Deprecated:  Required parameter $data follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456
[06-Jul-2021 17:36:09 Europe/Moscow] PHP Deprecated:  Required parameter $keys follows optional parameter $method in /opt/share/www/smf/Sources/Subs-Db-mysql.php on line 1456

 

Опубликовано

PHP 7.4 поддерживается SMF 2.0.17 и выше. я взял 2.1rc3 с github. русский не ставил (сам делаю потихоньку) кривой он у них.  от этого бывают проблемы.

Опубликовано

[07-Jul-2021 14:10:30 Europe/Moscow] PHP Warning:  mime_content_type(): Failed to load magic database in /opt/share/nginx/html/fileinfo.php on line 2
[07-Jul-2021 14:10:30 Europe/Moscow] PHP Warning:  mime_content_type(): Failed identify data 0:bad magic in `(null)' in /opt/share/nginx/html/fileinfo.php on line 2
[07-Jul-2021 14:10:30 Europe/Moscow] PHP Fatal error:  Uncaught ValueError: Path cannot be empty in /opt/share/nginx/html/fileinfo.php:2
Stack trace:
#0 /opt/share/nginx/html/fileinfo.php(2): mime_content_type('apple-touch-ico...')
#1 {main}
  thrown in /opt/share/nginx/html/fileinfo.php on line 2

похоже нет базы в самом phpX-mod-fileinfo или плохая. то есть встроенное в php работать не будет. я думал поставил модуль и вот оно счастье.

~ # php-cli ./fileinfo.php
~ #
~ # cat ./fileinfo.php
<?php
echo(mime_content_type('apple-touch-icon.png')); // returns image/png
?> ~ #

 

Опубликовано

вот как должен был ответить рабочий phpX-mod-fileinfo. эхехе.

C:\Users\Mecce\Downloads\php-7.4.21-nts-Win32-vc15-x64>php fileinfo.php

image/png


C:\Users\Mecce\Downloads\php-7.4.21-nts-Win32-vc15-x64>

Опубликовано

opkg install php8-mod-fileinfo

opkg install file без него у fileinfo базы видимо нет.

echo export MAGIC="/opt/share/misc/magic" >> /opt/etc/profile записал переменную.

php.ini  изменил memory_limit = 32M на 8, 16 ругался. мозги говорит мозги.

открываю файл в консоли.

~ # cat /opt/share/nginx/html/fileinfo.php
<?php
echo(mime_content_type('/opt/share/nginx/html/apple-touch-icon.png')); // returns image/png
?>~ #

~ # php-cli /opt/share/nginx/html/fileinfo.php
image/png~ #

ответ верный php распознал.

если по http открыть снова здравствуйте.

2021/07/08 00:49:53 [error] 574#0: *12 FastCGI sent in stderr: "PHP message: PHP Warning:  mime_content_type(): Failed to load magic database in /opt/share/nginx/html/fileinfo.php on line 2PHP message: PHP Warning:  mime_content_type(): Failed identify data 0:bad magic in `(null)' in /opt/share/nginx/html/fileinfo.php on line 2PHP message: PHP Fatal error:  Uncaught ValueError: Path cannot be empty in /opt/share/nginx/html/fileinfo.php:2
Stack trace:
#0 /opt/share/nginx/html/fileinfo.php(2): mime_content_type('/opt/share/ngin...')
#1 {main}

где то переменную искать. nginx, php-fpm

Опубликовано (изменено)

http://bin.entware.net/mipselsf-k3.4/test/php8/ (coming soon ))))

пытайте

Скрытый текст
~/resources # 
~/resources # env | grep ^MAG
~/resources # 
~/resources # ls -al
drwxr-xr-x    2 root     root          4096 Jul  8 01:06 .
drwxr-xr-x   24 root     root         12288 Jul  8 01:05 ..
-rw-r--r--    1 root     root        144810 Jun  1 21:43 67647.mov
-rw-r--r--    1 root     root         10752 Jun  1 21:43 bug79756.xls
-rw-r--r--    1 root     root           392 Jun  1 21:43 dir.zip
-rw-r--r--    1 root     root           191 Jul  8 01:06 fileinfo.php
-rw-r--r--    1 root     root            24 Jun  1 21:43 test.awk
-rw-r--r--    1 root     root            58 Jun  1 21:43 test.bmp
-rw-r--r--    1 root     root            43 Jun  1 21:43 test.gif
-rw-r--r--    1 root     root           160 Jun  1 21:43 test.jpg
-rw-r--r--    1 root     root           185 Jun  1 21:43 test.json
-rw-r--r--    1 root     root         25801 Jun  1 21:43 test.mp3
-rw-r--r--    1 root     root          1605 Jun  1 21:43 test.pdf
-rw-r--r--    1 root     root            93 Jun  1 21:43 test.png
-rw-r--r--    1 root     root         99840 Jun  1 21:43 test.ppt
-rw-r--r--    1 root     root            19 Jun  1 21:43 test.tga
-rw-r--r--    1 root     root          4837 Jun  1 21:43 test.webm
~/resources # 
~/resources # php fileinfo.php 
video/quicktime
application/vnd.ms-excel
application/zip
text/x-php
text/plain
image/x-ms-bmp
image/gif
image/jpeg
application/json
audio/mpeg
application/pdf
image/png
application/vnd.ms-powerpoint
image/x-tga
video/webm
~/resources # 
~/resources # php -v
PHP 8.0.7 (cli) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.7, Copyright (c) Zend Technologies
~/resources #

 

 

Изменено пользователем TheBB
Опубликовано (изменено)

8.0.7 PHP Warning:  PHP Startup: Unable to load dynamic library 'intl.so' (tried: /opt/lib/php8/intl.so (libicuio.so.69: cannot open shared object file: No such file or directory), /opt/lib/php8/intl.so.so (/opt/lib/php8/intl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

so или so.so

Изменено пользователем Meccep45
Опубликовано (изменено)

91229376_Screenshot2021-07-08at04-05-35httpszav-hubddnsnet.png.dea34b4442f08c1050a2e6d7da7ee837.png

не знаю чо вы  сделали. но вы волшебник. всё заработало. потестю немного. отпишусь.

Изменено пользователем Meccep45
Опубликовано
9 часов назад, Meccep45 сказал:

не знаю чо вы  сделали. но вы волшебник. всё заработало. потестю немного. отпишусь.

"... Я не волшебник, я только учусь..." (х/ф "Золушка", 1947 г.)

icu - нов. версия пакета (те, кто подписан на канал https://t.me/entware, уже в курсе, а не успевшим  подписаться - (инсайдерская утечка) начало очередной синхронизации ))) )

пересобрал "fileinfo" - для встроенной базы используется файл "data_file.c", который генерится из "magic.mgc" ("magic.mgc" - скомпиленый файл базы, "magic" - текстовый, а в OpenWrt, ещё и "погрызенный" (+L92)  sed`ом)

# ls -lL /opt/share/misc/
-rw-r--r--    1 root     root        725132 May 26 14:09 magic
-rw-r--r--    1 root     root       7035712 Jul  8 01:18 magic.mgc
#
# cat create_data_file.php 
#!/usr/bin/env php
/* This is a generated file, do not modify */
/* Usage: php create_data_file.php /path/to/magic.mgc > data_file.c */
...

Из пропатченного  "magic.mgc" генерится "data_file.c", размером ~ 42 MB (против ~ 40 MB в оригинале), diff (патч) из них выходит ~ 22 MB.

Нафига оно нужно? См. ниже ( такая же фиговина и для php):

/opt/bin # 
/opt/bin # file -m /opt/share/misc_orig/magic.mgc -L bash.file 
bash.file: a /opt/bin/bash script, ASCII text executable
/opt/bin # 
/opt/bin # file -m /opt/share/misc_patch/magic.mgc -L bash.file 
bash.file: Bourne-Again shell script, ASCII text executable
/opt/bin # 
/opt/bin # 
/opt/bin # file -m /opt/share/misc_orig/magic.mgc -L ldd
ldd: a /opt/bin/sh script, ASCII text executable
/opt/bin # 
/opt/bin # file -m /opt/share/misc_patch/magic.mgc -L ldd
ldd: POSIX shell script, ASCII text executable
/opt/bin # 
/opt/bin # 
/opt/bin # file -m /opt/share/misc_orig/magic.mgc -L wsrep_sst_mariabackup 
wsrep_sst_mariabackup: a /opt/bin/sh -ue script, ASCII text executable
/opt/bin # 
/opt/bin # file -m /opt/share/misc_patch/magic.mgc -L wsrep_sst_mariabackup 
wsrep_sst_mariabackup: POSIX shell script, ASCII text executable
/opt/bin # 
/opt/bin # 
/opt/bin # file -m /opt/share/misc_orig/magic.mgc -L zigbee2mqtt 
zigbee2mqtt: a /opt/bin/node script, ASCII text executable
/opt/bin # 
/opt/bin # file -m /opt/share/misc_patch/magic.mgc -L zigbee2mqtt 
zigbee2mqtt: Node.js script, ASCII text executable
/opt/bin # 
/opt/bin # 
/opt/bin # file -m /opt/share/misc_orig/magic.mgc -L file.php 
file.php: a /opt/bin/php script, ASCII text executable
/opt/bin # 
/opt/bin # file -m /opt/share/misc_patch/magic.mgc -L file.php 
file.php: PHP script, ASCII text executable
/opt/bin # 

"magic.mgc"/"magic" - значения не имеет; "/opt/share/misc_orig/magic.mgc" - оригинальный (не патченный); "/opt/share/misc_patch/magic.mgc" - патченный

  • 2 года спустя...
Опубликовано

только решили в 7 версии и вот в 8 снова она.

Скрытый текст
[18-Apr-2024 05:16:22 Europe/Moscow] PHP Warning:  mime_content_type(): Failed to load magic database in /opt/share/nginx/html/test.php on line 2
[18-Apr-2024 05:16:22 Europe/Moscow] PHP Warning:  mime_content_type(): Failed identify data 0:File 543 supports only version 18 magic files. `(null)' is version 16 in /opt/share/nginx/html/test.php on line 2
[18-Apr-2024 05:16:22 Europe/Moscow] PHP Fatal error:  Uncaught ValueError: Path cannot be empty in /opt/share/nginx/html/test.php:2

 

~ # cat /opt/share/nginx/html/test.php
<?php
echo(mime_content_type('/opt/share/nginx/html/favicon/apple-touch-icon.png')); // returns image/png
?>
~ #

 

Опубликовано

в этот раз решилось проще. скачал  пакет file, добавил в файл www.conf  переменную env[MAGIC] = /opt/share/misc/magic и всё завелось.

Опубликовано
8 часов назад, Meccep45 сказал:

и вот в 8 снова она.

Тут можно меня смело пинать и дать в глаз... подготовил, но пропустил-забыл. Если не критично - можно подождать до следующей синхронизации. Или?

Будет так:

 ~  # file Example1.png 
Example1.png: PNG image data, 1337 x 1067, 8-bit/color RGB, non-interlaced
 ~  # 
 ~  # php fileinfo.php; echo
image/png
 ~  # 

 

Опубликовано
6 часов назад, TheBB сказал:

подготовил, но пропустил-забыл

я лучше руку протяну, чтоб спасибо сказать. за отзывчивость.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.