์ด ์ดํ๋ฆฌ์ผ์ด์ ์ Xpressengine3(์ดํ XE3)์ ํ๋ฌ๊ทธ์ธ ์ ๋๋ค.
์ด ํ๋ฌ๊ทธ์ธ์ XE3์์ '์ ๋ณดํต์ ๋ง ์ด์ฉ์ด์ง ๋ฐ ์ ๋ณด๋ณดํธ ๋ฑ์ ๊ดํ ๋ฒ๋ฅ ์ 29์กฐ' ๋ฐ '๋๋ฒ ์ํ๋ น ์ 16์กฐ'์ ์๊ฑฐ ์ฅ๊ธฐ๊ฐ๋์ ๋ก๊ทธ์ธ์ ํ์ง ์์ ์ฌ์ฉ์ ๊ณ์ ์ ํ์ ์ ๋ณด์ ๋ณ๋ ๋ถ๋ฆฌํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
์ด ํ๋ฌ๊ทธ์ธ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ๋จผ์ ์ด๋ฉ์ผ ์ ์ก ์ค์ ์ด ๋์ด์์ด์ผ ํฉ๋๋ค.
- ํด๋ฉด ๊ณ์ ์ฒ๋ฆฌ ์๊ณ : ์ฅ์๊ฐ๋์ ๋ก๊ทธ์ธํ์ง ์์ ํด๋ฉด์ฒ๋ฆฌ ๋ ์์ ์ธ ๊ณ์ ์ ์ด๋ฉ์ผ์ผ๋ก 'ํด๋ฉด๊ณ์ ์ฒ๋ฆฌ ์๋ฆผ'์ ๋ณด๋ ๋๋ค.
- ํด๋ฉด๊ณ์ ์ฒ๋ฆฌ: ํด๋ฉด์ฒ๋ฆฌ ๋์ ๊ณ์ ์ ํด๋ฉด์ฒ๋ฆฌ ํฉ๋๋ค. ํด๋ฉด์ฒ๋ฆฌ๋ ๊ณ์ ์ ์ ๋ณด๋ ๋ณ๋ ํ
์ด๋ธ์ ์ ์ฅ๋๊ฑฐ๋ ์๊ตฌ์ญ์ ๋ฉ๋๋ค.
- ํด๋ฉด์ฒ๋ฆฌ์ ํด๋น ๊ณ์ ์ ์ด๋ฉ์ผ๋ก ํด๋ฉด์ฒ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ํต๋ณด๋ฉ๋๋ค.
- ํด๋ฉด์ฒ๋ฆฌ๋ ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธ์ด ์๋๋ ๊ฒฝ์ฐ, ํด๋ฉด์ฒ๋ฆฌ๋๋ ๊ณ์ ์ด ๋ค์ ๋ณต๊ตฌ๋ฉ๋๋ค.(๋จ, ์๊ตฌ์ญ์ ๋ ๊ณ์ ์ ๋ณต๊ตฌ ๋ถ๊ฐ)
- ํด๋ฉด๊ณ์ ์ ์๋์ผ๋ก ๋ณต๊ตฌํ ์ ์์ต๋๋ค.
$ php artisan plugin:install freezer
- ๊ด๋ฆฌ์ > ํ๋ฌ๊ทธ์ธ & ์ ๋ฐ์ดํธ > ํ๋ฌ๊ทธ์ธ ๋ชฉ๋ก ๋ด์ ์ ํ๋ฌ๊ทธ์ธ ์ค์น ๋ฒํผ ํด๋ฆญ
freezer๊ฒ์ ํ ์ค์นํ๊ธฐ
- ๋ค์์ ํ์ด์ง์์ ๋ค์ด๋ก๋
- ํ๋ก์ ํธ์
plugins๋๋ ํ ๋ฆฌ ์๋freezer๋๋ ํ ๋ฆฌ๋ช ์ผ๋ก ์์ถํด์ freezer๋๋ ํ ๋ฆฌ ์ด๋ ํcomposer dump๋ช ๋ น ์คํ
ํ๋ฌ๊ทธ์ธ ์คํ์ ์ ์ฉ๋๋ ๊ธฐ๋ณธ ์ค์ ์ /plugins/freezer/config.php์ ์ ์ฅ๋์ด ์์ต๋๋ค. ๋ง์ฝ ๊ธฐ๋ณธ ์ค์ ์ ๋ณ๊ฒฝํด์ ์ฌ์ฉํ๊ณ ์ถ์ ๊ฒฝ์ฐ, /config/production/services.php์ freezer ํญ๋ชฉ์ ์์ฑํ๊ณ , ์ํ๋ ์ค์ ์ ๋ณ๊ฒฝํ๋ฉด ๋ฉ๋๋ค.
/config/production/services.php์ freezer ํญ๋ชฉ์ ์ง์ ํ ์ค์ ์ ๊ธฐ๋ณธ์ค์ ์ ๋ฎ์ด ์์๋๋ค.
// config/production/services.php
<?php
return [
'freezer' => [
'timer' => 730, // ๊ธฐ๋ณธ ํ์ด๋จธ๋ฅผ 2๋
์ผ๋ก ๋ณ๊ฒฝ
]
];
์ ์ฝ๋๋ ํด๋ฉด๊ณ์ ์ฒ๋ฆฌ ๊ธฐ์ค์ด ๋๋ ํ์ด๋จธ๋ฅผ 1๋ (๊ธฐ๋ณธ)์์ 2๋ ์ผ๋ก ๋ณ๊ฒฝํ๋ ์ฝ๋์ ๋๋ค. ํ์ด๋จธ ์ด์ธ์๋ ๋ง์ ์ค์ ์ด ์กด์ฌํ๋ฉฐ, ์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์ด ํ๋ฌ๊ทธ์ธ์ ์ฝ์ ๋ช
๋ น์ด๋ฅผ ํตํด ์๋ํฉ๋๋ค. ์๋์ ๋ช
๋ น์ ์ฃผ๊ธฐ์ ์ผ๋ก ์คํํ์ญ์์ค. ์๋์ผ๋ก ์คํํ๊ฑฐ๋ crontab ๋๋ ์ค์ผ์ฅด๋ฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ฃจ์ 1ํ์ฉ ์คํ๋๋๋ก ํ์ญ์์ค.
์ง์ ๋ ๊ธฐ๊ฐ(๊ธฐ๋ณธ 11๊ฐ์)๋์ ๋ก๊ทธ์ธํ ์ ์ด ์๋ ํ์์๊ฒ ์ด๋ฉ์ผ๋ก ํด๋ฉด๊ณ์ ์ฒ๋ฆฌ ์๊ณ ์๋ฆผ์ ์ ์กํฉ๋๋ค.
php artisan freezer:notify ๋ช
๋ น์ ์ฌ์ฉํ์ญ์์ค.
$ php artisan freezer:notify
Emails will be sent to 3 users. Do you want to execute it? (yes/no) [no]:
> yes
[2017.08.16 11:54:27] Emails were sent to 3 users for notify about freeze.
์ง์ ๋ ๊ธฐ๊ฐ(๊ธฐ๋ณธ 1๋ )๋์ ๋ก๊ทธ์ธํ ์ ์ด ์๋ ํ์์ ํด๋ฉด๊ณ์ ์ฒ๋ฆฌํฉ๋๋ค.
php artisan freezer:freeze ๋ช
๋ น์ ์ฌ์ฉํ์ญ์์ค.
$ php artisan freezer:freeze
3 users will be frozen. Do you want to execute it? (yes/no) [no]:
> yes
[2017.09.16 11:59:16] 3 users ware frozen.
ํด๋ฉด์ฒ๋ฆฌ๋ ๊ณ์ ์ ์๋์ผ๋ก ๋ค์ ๋ณต๊ตฌํ ์ ์์ต๋๋ค.
php artisan freezer:unfreeze [USER_ID]๋ฅผ ์ฌ์ฉํ์ญ์์ค.
$ php artisan freezer:unfreeze aa972e8b-6a73-459a-af18-22e7991d43ad
'someone' users will be unfreezed. Do you want to execute it? (yes/no) [no]:
> yes
the user was unfreezed.
์๋์ผ๋ก ๋ณต๊ตฌํ์ง ์๋๋ผ๋ ํด๋ฉด์ฒ๋ฆฌ ๋ ์ฌ์ฉ์๊ฐ ๋ค์ ๋ก๊ทธ์ธ์ ํ ๊ฒฝ์ฐ ์๋์ผ๋ก ๊ณ์ ์ด ๋ณต๊ตฌ๋ฉ๋๋ค.
์ด ํ๋ฌ๊ทธ์ธ์ LGPL๋ผ์ด์ ์ค ํ์ ์์ต๋๋ค. https://opensource.org/licenses/LGPL-2.1