Laravel-log-viewer: ๋ฃจ๋ฉ˜ 5.5.*์—์„œ ์ผ์ผ ์ €์žฅ ๋กœ๊ทธ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2018๋…„ 04์›” 19์ผ  ยท  11์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: rap2hpoutre/laravel-log-viewer

Encrypter.php -> getJsonPayload๋Š” ํŽ˜์ด๋กœ๋“œ๊ฐ€ json_decodeable bash64 ์•”ํ˜ธํ™” ๋ฐ์ดํ„ฐ๊ฐ€ ๋˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ํŽ˜์ด๋กœ๋“œ๋Š” base64๋กœ ์ธ์ฝ”๋”ฉ๋œ ๋กœ๊ทธ ํŒŒ์ผ ์ด๋ฆ„ ๋ฌธ์ž์—ด(lumen-2018-04-19.log)๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ ๋กœ๊ทธ ํŒŒ์ผ์„ ์„ ํƒํ•˜๋ฉด ์ž˜๋ชป๋œ ํŽ˜์ด๋กœ๋“œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@rwattogl ๋ณด๊ธฐ ์บ์‹œ๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ƒฅ ์‹คํ–‰:

php artisan view:clear

๋ชจ๋“  11 ๋Œ“๊ธ€

์–ด๋–ค ๋ฒ„์ „์˜ ๋ผ๋ผ๋ฒจ ๋กœ๊ทธ ๋ทฐ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ๋‹ˆ๊นŒ?

0.14.3๋ถ€ํ„ฐ 0.11.2๊นŒ์ง€ ํ•˜๋‚˜์”ฉ ์‹œ๋„ํ•ด๋ดค์Šต๋‹ˆ๋‹ค. 0.11.2 ์ž‘๋™ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์€ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” 0.10.*์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์„ ๋•Œ ํŒจํ‚ค์ง€๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋ทฐ ์บ์‹œ์— ๋Œ€ํ•ด ๋ญ”๊ฐ€๊ฐ€ ์žˆ์„์ง€๋„ ๋ชจ๋ฆ…๋‹ˆ๋‹ค(ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ). storage/framework/views/ ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์ œ๊ฑฐํ•œ ๋‹ค์Œ ๋‹ค์‹œ ์‹œ๋„ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

Laravel 5.6์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
"๋ผ๋ผ๋ฒจ/ํ”„๋ ˆ์ž„์›Œํฌ": "5.6.*",
"rap2hpoutre/laravel-log-viewer": "~0.14",

๋‚˜๋Š” ๋˜ํ•œ ~ 0.11๋กœ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ํ™•์‹คํžˆ ์ž‘๋™ํ–ˆ์ง€๋งŒ (์•„๋งˆ๋„ Laravel?) ์ดํ›„ ์ผ๋ถ€ ์—…๋ฐ์ดํŠธ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

(1/1)ย DecryptExceptionThe payload is invalid.
--
inย Encrypter.phpย (line 191)
atย Encrypter->getJsonPayload(null)inย Encrypter.phpย (line 134)
atย Encrypter->decrypt('bGFyYXZlbC0yMDE4LTA0LTI0LmxvZw==')inย Facade.phpย (line 221)
atย Facade::__callStatic('decrypt',ย array('bGFyYXZlbC0yMDE4LTA0LTI0LmxvZw=='))inย LogViewerController.phpย (line 24)
atย LogViewerController->index()

@rwattogl ๋ณด๊ธฐ ์บ์‹œ๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ƒฅ ์‹คํ–‰:

php artisan view:clear

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ ๊ทธ๋ ‡๊ฒŒ ํ–ˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์žŠ์–ด๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค(๋””๋ ‰ํ† ๋ฆฌ๋„ ์ˆ˜๋™์œผ๋กœ ์ง€์šฐ๋ ค๊ณ  ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค). ์šฐ๋ฆฌ๋Š” ๊ฐ€๋Šฅ์„ ํ†ตํ•ด ์‚ฌ์ดํŠธ์˜ ์ƒˆ ๋ฒ„์ „์„ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์—…๋ฐ์ดํŠธ ์‹œ ๋ชจ๋“  ์บ์‹œ๋ฅผ ์ง€์šฐ๋ฏ€๋กœ ๊ทธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋‚ฎ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ์ง์ ‘ ์žฌํ˜„ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด๋ฒˆ ์ฃผ ํ›„๋ฐ˜์— ์กฐ์‚ฌํ•  ์‹œ๊ฐ„์„ ๊ฐ–๊ณ  ๋‹ค์‹œ ๋ณด๊ณ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@rwattogl ์ข‹์•„. ๋‚˜๋Š” ์—ฌ์ „ํžˆ ๋ณด๊ธฐ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๋ณด๊ธฐ์—์„œ ์˜ค๋Š” base64 ๋ฌธ์ž์—ด์ด ์žˆ๊ณ  ์ด๊ฒƒ์€ ๋ณด๊ธฐ์— ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์บ์‹œ๋ฅผ ์ง€์šฐ๋„๋ก ์š”์ฒญํ–ˆ์Šต๋‹ˆ๋‹ค... ๊ทธ๋Ÿฌ๋‚˜ ๊ท€ํ•˜์˜ ๋‹ต๋ณ€์— ๋”ฐ๋ฅด๋ฉด ์ด๋ฏธ ์บ์‹œ๋ฅผ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋ณด๊ธฐ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๋ณด๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ๋ณด๊ธฐ๋ฅผ ๊ฒŒ์‹œ ํ–ˆ์Šต๋‹ˆ๊นŒ?

๋กœ๊ทธ ๋ทฐ์–ด์— ๋Œ€ํ•ด ๋ญ”๊ฐ€๋ฅผ ์ฐพ์œผ๋ฉด resources/views/vendor ํด๋”๋ฅผ ํ™•์ธํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡๋‹ค๋ฉด ์ œ๊ฑฐํ•˜์‹ญ์‹œ์˜ค.

ํ˜„์žฌ ๋ณด๊ธฐ์—๋Š” base64 ์ธ์ฝ”๋”ฉ์ด ์—†์Šต๋‹ˆ๋‹ค: https://github.com/rap2hpoutre/laravel-log-viewer/blob/master/src/views/log.blade.php

(๊ธฐ๋‹ค๋ ค์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค)

์•„, ๋‹น์‹ ์ด ์™„์ „ํžˆ ๋งž์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์— ์‚ฌ์šฉ์ž ์ •์˜ ๋ณด๊ธฐ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์žŠ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ณด๊ธฐ๋Š” ์ตœ์‹  ๋ฒ„์ „์˜ ์ฝ”๋“œ์— ๋”ฐ๋ผ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. base64 ํ•จ์ˆ˜๋ฅผ \Illuminate\Support\Facades\Crypt::encrypt์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์Šคํƒ€์ผ ์ฐธ์กฐ๋กœ ๊ต์ฒดํ–ˆ๊ณ  ๋ชจ๋‘ ๋‹ค์‹œ ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. @Cyclops0571 ์ด ๊ฑฐ๊ธฐ์—์„œ ํ™•์ธํ•˜๋Š”

@Cyclops0571 ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ๋‚˜์š”?

@rap2hpoutre php artisan view:clear +1

์ด์ œ ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰