Bash добавляет \r к каждой строке

Вы должны знать следующие факты:

  • Порты ниже 1024 могут быть открыты только пользователем root.

  • Запускать веб-приложение Spring Boot с привилегиями root — плохая идея. Потому что, если приложение скомпрометировано, злоумышленник получает привилегии root.

Одним из решений является запуск httpd-сервера Apache в качестве обратного прокси-сервера и перенаправление запроса на порт 80 на порт выше 1024 на локальном хосте. Для этого вы можете использовать директивуProxyPassApache.

Вот статья об этом методе:Использование Apache в качестве обратного прокси-сервера для Spring Boot Embedded Tomcat

Основная конфигурация Apache выглядит следующим образом:

ProxyPreserveHost on
RequestHeader set X-Forwarded-Proto https
RequestHeader set X-Forwarded-Port 443
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/

0
10.03.2020, 00:08
1 ответ

Ваш сценарий представляет собой текстовый файл DOS, что означает, что он содержит символ возврата каретки (, который часто пишется\r)в конце каждой строки. В текстовых файлах Unix этого нет, и когда система Unix выводит такой символ, позиция курсора перемещается в самое начало строки. Дальнейший вывод в эту строку перезапишет то, что было ранее выведено.

Преобразование скрипта в текстовый файл Unix решит вашу проблему:

$ bash -x script.sh
+++ date +%Y-%m-%d_%H-%m-%S
++ echo -n 2020-03-09_21-03-47
+ OUTFILE=$'2020-03-09_21-03-47\r'
+ ASD=$'DDD\r'
' echo -n 'DATE [2020-03-09_21-03-47
' echo -n 'DDD [DDD-03-47
$ dos2unix script.sh
dos2unix: converting file script.sh to Unix format...
$ bash -x script.sh
+++ date +%Y-%m-%d_%H-%m-%S
++ echo -n 2020-03-09_21-03-03
+ OUTFILE=2020-03-09_21-03-03
+ ASD=DDD
+ echo -n 'DATE [2020-03-09_21-03-03]'
DATE [2020-03-09_21-03-03]+ echo -n 'DDD [DDD]'
DDD [DDD]

(нет новой строки после вывода в последней строке из-за использованияecho -n).

$ bash script.sh
DATE [2020-03-09_21-03-19]DDD [DDD]

(нет новой строки после вывода в последней строке из-за использованияecho -n).

0
28.04.2021, 23:21

Теги

Похожие вопросы