κ΄λ¦¬μ ν¨λ (κ΄λ¦¬μ ν¨λμμ)μ v1.8.17μμ v1.8.19λ‘ μ κ·Έλ μ΄λνλ €κ³ νλ©΄ λ€μ μ€λ₯κ° λ°μν©λλ€.
λ€μ΄λ‘λ μλ μ€ μ€λ₯ (μ½λ : 0) :
https://getgrav.org/download/plugins/admin/1.8.19 λ©μμ§ : μλͺ»λ / μλͺ»λ νμμ μ¬μ©νλ URL λλ λλ½ λ URL
SSH λ° GPM λͺ λ Ήμ μ¬μ©νλ©΄ μ λλ‘ μλν©λλ€.
μμ€ν ꡬμ±μμ Curlμμ FopenμΌλ‘ λλ κ·Έ λ°λλ‘ μ ν ν΄ λ³Ό μ μμ΅λκΉ?
μ¬κΈ°μ κ°μ κ²½μ°. λν νλ¬κ·ΈμΈμ λ€μ΄λ‘λ ν μ μμ΅λλ€.
곡μ νΈμ€ν μ μ¬μ©νκ³ μμ΅λλ€
PHPκ° CLIμ μΉ μλ² λͺ¨λμμ λμΌν μ§ νμΈν μ μμ΅λκΉ?
λν μ λ°μ΄νΈλ₯Ό μ²μ μλνλ κ²½μ°μ΄κ±°λ λ¬Έμ κ° λ°©κΈ λνλκΈ° μμνμ§λ§ μ΄μ μ μ±κ³΅μ μΌλ‘ μ λ°μ΄νΈ ν μ μ΄ μλμ§ μλ €μ£Όμκ² μ΅λκΉ?
λλ λνμ΄ κ°μ λ¬Έμ μ λν΄ λν¬λ₯Ό μ³€λ€.
λλ μ΄μ κ·Έκ²μ λν΄ μ‘°κΈ λ μκ³ μλ€κ³ μκ°ν©λλ€ .. 곡μ νΈμ€ν
μμλ μ¬μ©ν©λλ€.
ꡬμ±μΌλ‘ μ΄λνκ³ μμ€ν
μμ κ³ κΈμΌλ‘ μ΄λνμ¬ μΈλΆ κ°μ Έ μ€κΈ° λ°©λ²μ "fopen"μΌλ‘ λ³κ²½νκ³ μ격 νμΈ νΌμ΄ (SSL)λ₯Ό "μλμ"λ‘ λ³κ²½ν©λλ€ (LetsEncryptμ μΈμ¦μλ‘ μ€ν λ¨).
κ°μκΈ° μ
λ°μ΄νΈλ₯Ό λ€μ΄λ‘λνμ¬ λ€μ μ€μΉν μ μμ΅λλ€ ..
λ€λ₯Έ μ¬λλ€μκ²λ ν¨κ³Όκ° μμμ§λ ..
ꡬμ±μΌλ‘ μ΄λνκ³ μμ€ν μμ κ³ κΈμΌλ‘ μ΄λνμ¬ μΈλΆ κ°μ Έ μ€κΈ° λ°©λ²μ "fopen"μΌλ‘ λ³κ²½νκ³ μ격 νμΈ νΌμ΄ (SSL)λ₯Ό "μλμ"λ‘ λ³κ²½ν©λλ€ (LetsEncryptμ μΈμ¦μλ‘ μ€ν λ¨).
κ°μκΈ° μ λ°μ΄νΈλ₯Ό λ€μ΄λ‘λνμ¬ λ€μ μ€μΉν μ μμ΅λλ€ ..
λλ κ°μ λ¬Έμ κ° μμλ€. μ΄κ²μ λλ₯Ό μν΄ μΌνμ΅λλ€.
μλ²μ λ무 μ€λλ SSL λ£¨νΈ μΈμ¦μ λ²μ μ΄μμ μ μμ΅λλ€. μΌλ°μ μΌλ‘ μλ² μννΈμ¨μ΄λ₯Ό μ κ·Έλ μ΄λνμ¬ μ λ°μ΄νΈ ν μ μμ΅λλ€.
μΆμ . μ΄κ²μ μμ μ μλ² SSL μΈμ¦μμ λ€λ¦ λλ€.
μλ²μ λ무 μ€λλ SSL λ£¨νΈ μΈμ¦μ λ²μ μ΄μμ μ μμ΅λλ€. μΌλ°μ μΌλ‘ μλ² μννΈμ¨μ΄λ₯Ό μ κ·Έλ μ΄λνμ¬ μ λ°μ΄νΈ ν μ μμ΅λλ€.
μΆμ . μ΄κ²μ μμ μ μλ² SSL μΈμ¦μμ λ€λ¦ λλ€.
μ¬κΈ°μ μΈκΈ λ λ¬Έμ λ 곡μ νΈμ€ν
μ κ΄ν κ²μ΄λ―λ‘ SSL λ£¨νΈ μΈμ¦μλ₯Ό μ
κ·Έλ μ΄λνλ μ μΌν λ°©λ²μ 곡μ νΈμ€ν
μ 곡 μ
체μ μμ²νκ±°λ λ€λ₯Έ 곡κΈμλ‘ μ΄λνλ κ²μ
λλ€ ....
μ¬μ©μλ 곡μ νΈμ€νΈμ λ£¨νΈ μΈμ¦μμ λν΄ λ€λ₯Έ μμ
μ μν ν μ μμ΅λλ€.
λΉμ μ΄ λ°©κΈ λ§ν κ²μ λμκ² μν μ νΈλ₯Ό λΆλ¬ μΌμΌ ν΅λλ€. λ¬Έμ μ λν΄ νΈμ€ν μ μ°λ½νκ³ μλ΅μ΄ μμΌλ©΄ λ€λ₯Έ κ³³μΌλ‘ μ΄λν©λλ€. μλ²λ₯Ό μ΅μ μνλ‘ μ μ§νμ§ μλ νΈμ€νΈμ λ¨Έλ¬Ό νμκ° μμ΅λλ€. :)
μλ²μ λͺ λ Ή μ€ (ssh)μμ curlμ μ¬μ©νμ¬μ΄ μ€λ₯λ₯Ό λ€μ λ§λλ λ°©λ²μ΄ μμ΅λκΉ? μ΄λ νΈμ€ν 곡κΈμλ₯Ό μ²λ¦¬ ν λ μ€λ₯λ₯Ό νμνκ³ λ£¨νΈ μΈμ¦μ μ κ·Έλ μ΄λκ° λ¬Έμ λ₯Ό μ€μ λ‘ ν΄κ²°νλμ§ μ½κ² νμΈν μ μλλ‘νλ λ° λ§μ λμμ΄λ©λλ€.
μ, λΈλΌμ°μ μμ λ°μ΄ν°λ₯Ό κ°μ Έ μμ CURLκ³Ό νΈνλλλ‘ λ³ννμμμ€.μ΄λ₯Όμν λꡬλ μλ€κ³ νμ ν©λλ€. μ μΌνμ£Όμ μ¬νμ λ‘κ·ΈμΈν΄μΌνκ³ + nonce ν ν°μ΄ μμ΄μΌνλ€λ κ²μ λλ€. μ¦, μμ²μ μ½κ° λ³κ²½ν΄μΌν©λλ€.
κ·Έλ κΈ΄ν΄λ κ΄λ¦¬μμκ²λ§ μ 곡νκ³ λ¬Έμ λ₯Ό μ¬ννλ λ¨κ³λ₯Ό κ±°μΉλ κ²μ μ΄λ ΅μ§ μμ΅λλ€. λͺ¨λμκ² μκ°μ΄ λ 걸릴 κ²μ λλ€.
@mahagr κ°μ¬νμ§λ§ μ€ν΄κ° μλ€κ³ μκ°ν©λλ€. curlμ μ¬μ©νμ¬ grav κ΄λ¦¬ νμ΄μ§μ μ‘μΈμ€νμ¬ λ¬Έμ λ₯Ό μ¬ννλ κ²μ λν΄ μ΄μΌκΈ°ν©λκΉ? λ€λ₯Έ μλ―Έ :
grav μμ€ν ꡬμ±μμ curlμμ fopenμΌλ‘ λ³κ²½νλ©΄ λ¬Έμ κ° ν΄κ²°λλ―λ‘ gravμμ λ΄λΆμ μΌλ‘ μλͺ»λ curl νΈμΆμ΄ μμ΄μΌν©λκΉ? λͺ λ Ή μ€μμ μΆμΆνκ³ λ€μ λ§λ€κ³ μΆμ νΈμΆμ λλ€.
μ€, μ΄λ²μλ ν΄λμ΅λλ€. curl
μ¬μ©νλ©΄ μ€ν¨νκ³ fopen
λ₯Ό μ¬μ©νλ©΄ λ¬Έμ κ° ν΄κ²°λ©λλ€.
κΈ°λ³Έμ μΌλ‘ μ¬λλ€μ Remote Verify Peer (SSL)
μ No
λ‘ λ³κ²½νλ©΄ λ¬Έμ κ° ν΄κ²°λλ©° μ΄λ μλ²μ μ€μΉλ SSL μΈμ¦μκ° μ€λλμμμ μλ―Έν©λλ€.
곡μ νΈμ€ν μ μ¬μ© μ€μ΄λ©° μΉ νΈμ€νΈ μ μ΄νμμ νμ© λͺ©λ‘μ λ±λ‘ ν μμλ IPμ λν λ°μ μ°κ²°μ΄ μ°¨λ¨λμμ΅λλ€.
λλ λνμ΄ κ°μ λ¬Έμ μ λν΄ λν¬λ₯Ό μ³€λ€.
λλ μ΄μ κ·Έκ²μ λν΄ μ‘°κΈ λ μκ³ μλ€κ³ μκ°ν©λλ€ .. 곡μ νΈμ€ν μμλ μ¬μ©ν©λλ€.ꡬμ±μΌλ‘ μ΄λνκ³ μμ€ν μμ κ³ κΈμΌλ‘ μ΄λνμ¬ μΈλΆ κ°μ Έ μ€κΈ° λ°©λ²μ "fopen"μΌλ‘ λ³κ²½νκ³ μ격 νμΈ νΌμ΄ (SSL)λ₯Ό "μλμ"λ‘ λ³κ²½ν©λλ€ (LetsEncryptμ μΈμ¦μλ‘ μ€ν λ¨).
κ°μκΈ° μ λ°μ΄νΈλ₯Ό λ€μ΄λ‘λνμ¬ λ€μ μ€μΉν μ μμ΅λλ€ ..μλ§λ μ΄κ²μ λ€λ₯Έ μ¬λλ€μκ²λ ν¨κ³Όκ° μμ΅λλ€.
μμ λ¨κ³λ₯Ό μ¬μ©νμ¬ λ²μ 1.6.22λ‘ μ
λ°μ΄νΈνμ΅λλ€. κ°μ¬ν©λλ€.
μ°Έκ³ : λ΄ λ²μ μ μΈλΆ κ°μ Έ μ€κΈ° λ°©λ² μ μ격 κ°μ Έ μ€κΈ° λ°©λ²μ
λλ€.
μ΄ λ¬Έμ λ₯Ό μ§μ κ²ͺκ³ μμ΅λλ€ (곡μ νΈμ€ν μ΄μ§λ§ κ΄λ¦¬μμ λλ€. Debian 9.12, ν¨ν€μ§λ μ΅μ μνμ λλ€).
Fetch Methodλ₯Ό fopenμΌλ‘ λ³κ²½νκ³ Remote Verify Peerλ₯Ό Noλ‘ λ³κ²½ν΄λ λμμ΄λμ§ μμ΅λλ€. μ¬μ ν μλͺ»λ AJAX μλ΅μλ°μ΅λλ€.
curl -v
νμ¬ μλμΌλ‘ 리λλ μ
μ μννκ³ λ§μ§λ§μ νμΌμ λ€μ΄λ‘λ ν μ μμ΅λλ€. κ·Έλμ Fetch Methodλ₯Ό κ°μ λ¬Έμ λ‘ cURLλ‘ λ³κ²½νλ€κ³ μκ°νμ΅λλ€.
μ체 νΈμ€ν CentOS 8 μλ²μμμ΄ λ¬Έμ κ° λ°μνμ΅λλ€. SELinuxλ httpd νλ‘μΈμ€μ λν λ€νΈμν¬ μ°κ²°μ μ°¨λ¨νμ΅λλ€.
sshλ‘ μλ²μ μ°κ²°νκ³ λ€μμ μ€νν©λλ€ (κ΄λ¦¬μ μ¬μΌ ν¨).
sudo sestatus -b |grep httpd_can_network_connect
κΈ°λ³Έκ°μ "off"μ
λλ€.
"μΌκΈ°"λ‘ μ€μ
sudo setsebool -P httpd_can_network_connect 1
μλ£λλ©΄ λ¬Έμ κ° ν΄κ²°λμ΄μΌν©λλ€.
μ¬κΈ°μλ κ°μ λ¬Έμ κ° μμ΅λλ€. μμ€ν μ fopenμΌλ‘ λ³κ²½νκ³ 'Remote Verify Peer (SSL)'λ₯Ό no.λ‘ λ³κ²½νμ΅λλ€. λ³κ²½ μ¬ν μμ, μ¬μ ν μ€λ₯κ° λ°μν©λλ€.
곡μ MediaTemple 그리λ νΈμ€ν ..
Grav 1.7μλ μ λ°μ΄νΈ λ€μ΄λ‘λμ λν κ°μ μ¬ν (Symfony λΌμ΄λΈλ¬λ¦¬ μ¬μ©)μ΄ μμ΅λλ€. λ¬Έμ κ° ν΄κ²°λλ©΄ (ν μ€νΈ μ¬μ΄νΈμμ) μλν΄ λ³Ό μ μμ΅λκΉ?
Grav 1.7μλ μ λ°μ΄νΈ λ€μ΄λ‘λμ λν κ°μ μ¬ν (Symfony λΌμ΄λΈλ¬λ¦¬ μ¬μ©)μ΄ μμ΅λλ€. λ¬Έμ κ° ν΄κ²°λλ©΄ (ν μ€νΈ μ¬μ΄νΈμμ) μλν΄ λ³Ό μ μμ΅λκΉ?
μ
λ°μ΄νΈ λ€μ΄λ‘λκ° μμ λμμ§λ§ 'μ€λλ μΊμ μ κ±°'( 'κ°μ Έ μ€κΈ° μ€ν¨ :
1 κ°μ μ€λλ μΊμ ν΄λλ₯Ό μ κ±°νμ΅λλ€ ... { "status": "success", "message": null} ')
@ezchile μ΄κ²μ λν΄ μλ‘μ΄ λ¬Έμ λ₯Ό λ§λ€μ΄ μ£Όμκ² μ΅λκΉ?
@mahagr λ¬Όλ‘ μ λλ€. λλ λ°©κΈ : https://github.com/getgrav/grav-plugin-admin/issues/1935
κ°μ¬ν©λλ€. λ―Έν΄κ²° λ¬Έμ λ₯Ό μΆμ νλ κ²μ΄ λ μ½μ΅λλ€. :)
κ°μ₯ μ μ©ν λκΈ
λλ λνμ΄ κ°μ λ¬Έμ μ λν΄ λν¬λ₯Ό μ³€λ€.
λλ μ΄μ κ·Έκ²μ λν΄ μ‘°κΈ λ μκ³ μλ€κ³ μκ°ν©λλ€ .. 곡μ νΈμ€ν μμλ μ¬μ©ν©λλ€.
ꡬμ±μΌλ‘ μ΄λνκ³ μμ€ν μμ κ³ κΈμΌλ‘ μ΄λνμ¬ μΈλΆ κ°μ Έ μ€κΈ° λ°©λ²μ "fopen"μΌλ‘ λ³κ²½νκ³ μ격 νμΈ νΌμ΄ (SSL)λ₯Ό "μλμ"λ‘ λ³κ²½ν©λλ€ (LetsEncryptμ μΈμ¦μλ‘ μ€ν λ¨).
κ°μκΈ° μ λ°μ΄νΈλ₯Ό λ€μ΄λ‘λνμ¬ λ€μ μ€μΉν μ μμ΅λλ€ ..
λ€λ₯Έ μ¬λλ€μκ²λ ν¨κ³Όκ° μμμ§λ ..