Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Автозапуск в фоне #3

Open
EvilSlesh opened this issue Oct 16, 2024 · 4 comments
Open

Автозапуск в фоне #3

EvilSlesh opened this issue Oct 16, 2024 · 4 comments

Comments

@EvilSlesh
Copy link

Установил на VPS без докера
Срипт отлично запускается в ручную командой php index.php и работает.
написал демона

[Unit]
Description=DNS Resolving Service

[Service]
ExecStart=-/usr/bin/php /root/iplist/index.php
PIDFile=/var/run/php/php-worker.pid
RemainAfterExit=no
Restart=on-failure
RestartSec=5s

проверяю systemctl status тоже вроде все хорошо, вывод есть

Oct 16 08:02:42 vm880664 php[10244]: [2024-10-16T11:02:42.934646+03:00] iplist.ERROR: All query attempts failed for frankfurt10073.discord.gg: No response for 'frankfurt10073.disco>
Oct 16 08:02:42 vm880664 php[10244]: [2024-10-16T11:02:42.944863+03:00] iplist.ERROR: All query attempts failed for frankfurt10079.discord.gg: No response for 'frankfurt10079.disco>
Oct 16 08:02:42 vm880664 php[10244]: [2024-10-16T11:02:42.950326+03:00] iplist.ERROR: All query attempts failed for frankfurt10076.discord.gg: No response for 'frankfurt10076.disco>
Oct 16 08:02:42 vm880664 php[10244]: [2024-10-16T11:02:42.952289+03:00] iplist.ERROR: All query attempts failed for frankfurt10070.discord.gg: No response for 'frankfurt10070.disco>
Oct 16 08:02:42 vm880664 php[10244]: [2024-10-16T11:02:42.953672+03:00] iplist.ERROR: All query attempts failed for frankfurt10075.discord.gg: No response for 'frankfurt10075.disco>

Но в браузере страница не открывается, вечная загрузка и никаких ошибок.
При ручном запуске все хорошо.
Подскажите как правильно запускать скрипт в фоне?

@EvilSlesh EvilSlesh changed the title Автозагрузка Автозапуск в фоне Oct 16, 2024
@rekryt
Copy link
Owner

rekryt commented Oct 16, 2024

Проверьте открылся ли сетевой порт:

netstat -tuln | grep LISTEN

ufw не блокирует?

ufw allow 8080/tcp

Что если попробовать так:

[Service]
ExecStart=-cd /root/iplist/ && /usr/bin/php /root/iplist/index.php

Или указать другой порт

[Service]
Environment="HTTP_PORT=80"

@EvilSlesh
Copy link
Author

EvilSlesh commented Oct 16, 2024

Порт 47133 открыт
tcp 20 0 0.0.0.0:47133 0.0.0.0:* LISTEN

ufw не блокирует?
ufw порт не блокирует

Что если попробовать так:
Не запускается скрипт

○ dns_resolver.service - DNS Resolving Service
     Loaded: loaded (/etc/systemd/system/dns_resolver.service; enabled; preset: enabled)
     Active: inactive (dead) since Wed 2024-10-16 09:11:17 UTC; 49s ago
   Duration: 45ms
    Process: 1011 ExecStart=cd /root/iplist/ && /usr/bin/php /root/iplist/index.php (code=exited, status=0/SUCCESS)
   Main PID: 1011 (code=exited, status=0/SUCCESS)
        CPU: 14ms

Oct 16 09:11:17 vm880664 systemd[1]: Started dns_resolver.service - DNS Resolving Service.
Oct 16 09:11:17 vm880664 systemd[1]: dns_resolver.service: Deactivated successfully.

Или указать другой порт
Порт у меня как раз указан 47133

При ручном запуске командой php index.php страничка нормально открывается, но скрипт перестанет выполняться после закрытия SSH, а если запускаю в фоне то страница не открывается.

@EvilSlesh
Copy link
Author

Попробовал использовать Supervisor для запуска в фоне.

[program:resolver]
command=/usr/bin/php /root/iplist/index.php
process_name=%(program_name)s
autorestart=true
redirect_stderr=true
stopsignal=KILL
killasgroup=true
stdout_logfile=/var/log/supervisor/test.log
stdout_events_enabled=false
loglevel=warn
user=root
environment=APPLICATION_ENV=testing

Скрипт в фоне работает

[2024-10-16T13:10:40.738275+03:00] iplist.ERROR: All query attempts failed for wstracker.online: Unexpected error during resolution: Amp\ByteStream\Readab>
[2024-10-16T13:10:40.739298+03:00] iplist.ERROR: All query attempts failed for www.anilibria.tv: Unexpected error during resolution: Amp\ByteStream\Readab>
[2024-10-16T13:10:41.221314+03:00] iplist.ERROR: Giving up resolution of 'wstracker.online', too many redirects ["77.88.8.88:53"] []
[2024-10-16T13:10:41.460236+03:00] iplist.ERROR: Giving up resolution of 'wstracker.online', too many redirects ["8.8.8.8:53"] []
[2024-10-16T13:10:41.679139+03:00] iplist.ERROR: Giving up resolution of 'wstracker.online', too many redirects ["1.1.1.1:53"] []

Но страницу тоже не грузит, вечная загрузка странички в браузере.

@rekryt
Copy link
Owner

rekryt commented Oct 16, 2024

Попробуйте использовать screen

Создайте bash скрипт, например в /home/iplist/start.sh

nano /home/iplist/start.sh
#!/bin/sh

cd /home/iplist/

while true ; do
sleep 2

/usr/bin/php index.php

done

Выдайте ему права на запуск

chmod +x /home/iplist/start.sh

Установите screen (если нету)

apt install -y screen

Запустите скрипт из под screen

screen -dmS iplist /home/iplist/start.sh

Для входа в скрин:

screen -r iplist
# нажмите Ctrl + A + D для выхода из скрина

Для выхода из screen-а нажмите держа Ctrl клавишу A затем D.

Команду можно поставить на автозапуск:

screen -dmS iplist /home/iplist/start.sh

Но в целом было бы не плохо разобраться почему не получается с сервисом.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants