Vestawebinterface: μ„€μΉ˜ 문제

에 λ§Œλ“  2018λ…„ 10μ›” 21일  Β·  70μ½”λ©˜νŠΈ  Β·  좜처: cdgco/VestaWebInterface

슀크립트λ₯Ό μ„€μΉ˜ν•˜λ €κ³  ν•˜λ©΄ 항상 "μ—°κ²° μ‹€νŒ¨, ꡬ성 νŒŒμΌμ„ ν™•μΈν•˜μ‹­μ‹œμ˜€"λΌλŠ” λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜μ§€λ§Œ ν™•μΈλ˜κ³  λͺ¨λ‘ μ •μƒμž…λ‹ˆλ‹€. λ„μ™€μ£Όμ„Έμš”. μ œκ±°ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€.

Abandoned Bug

λͺ¨λ“  70 λŒ“κΈ€

μ•ˆλ…•ν•˜μ„Έμš”, 문제둜 인해 μ£„μ†‘ν•©λ‹ˆλ‹€. 도메인이 pop.vps.co.veμž…λ‹ˆκΉŒ?

예, λ°±μ—… μ„œλ²„ 쀑 ν•˜λ‚˜μ˜ 도메인 λ„λ©”μΈμž…λ‹ˆλ‹€.

Vesta Web Interfaceλ₯Ό λ‹€μ‹œ μ„€μΉ˜ν•œ λ‹€μŒ
.htaccess νŒŒμΌμ„ μ—΄κ³  PHP ν”Œλž˜κ·Έ μ˜΅μ…˜μ„ "켜기"둜 λ³€κ²½ν•˜λ©΄ μ‹œλ„ν•˜κ² μŠ΅λ‹ˆλ‹€.
문제λ₯Ό μ§„λ‹¨ν•©λ‹ˆλ‹€.

[ root@example public_html]# bash <(curl -s https://cdgco.github.io/full)
ν•„μˆ˜ νŒ¨ν‚€μ§€ 확인 쀑...
wget 발견
타λ₯΄ 발견
μžμ‹ 발견

Vesta Web Interface ν”„λŸ°νŠΈμ—”λ“œ μ„€μΉ˜ 쀑...
Vesta Web Interface λ°±μ—”λ“œ μ„€μΉ˜ 쀑...
μ„€μΉ˜μ˜ 전체 μ›Ή μ£Όμ†Œλ₯Ό μž…λ ₯ν•˜μ‹­μ‹œμ˜€: https://example.com
/dev/fd/63: 189ν–‰: /usr/local/vesta/web/vwi/config.php: ν•΄λ‹Ή νŒŒμΌμ΄λ‚˜ 디렉토리가 μ—†μŠ΅λ‹ˆλ‹€.

μ„€μΉ˜ μ™„λ£Œ! μ›Ήμ‚¬μ΄νŠΈλ₯Ό 온라인으둜 λ°©λ¬Έν•˜μ—¬ ꡬ성을 μ™„λ£Œν•˜μ‹­μ‹œμ˜€.

슀크립트λ₯Ό μ„€μΉ˜ν•˜λ €κ³  ν•  λ•Œ λ°œμƒν•˜λŠ” μ‹€μˆ˜μž…λ‹ˆλ‹€. 항상 ν•΄λ‹Ή νŒŒμΌμ„ μˆ˜λ™μœΌλ‘œ λ§Œλ“€μ–΄μ•Ό ν•©λ‹ˆλ‹€. 그것과 관련이 μžˆλ‹€κ³  μƒκ°ν•˜μ‹­λ‹ˆκΉŒ?

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 인덱슀: 67ν–‰μ˜ /home/admin/web/example.com/public_html/includes/includes.php의 μ‚¬μš©μž 이름

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 인덱슀: 68ν–‰μ—μ„œ /home/admin/web/example.com/public_html/includes/includes.php에 λ‘œκ·ΈμΈν–ˆμŠ΅λ‹ˆλ‹€.

κ²½κ³ : array_values()λŠ” λ§€κ°œλ³€μˆ˜ 1이 배열일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•©λ‹ˆλ‹€. 41ν–‰μ˜ /home/admin/web/example.com/public_html/login.php에 null이 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

그것은 λ‚˜μ—κ²Œ λ³΄μ—¬μ£ΌλŠ” 였λ₯˜μž…λ‹ˆλ‹€

λ‘œκ·ΈμΈμ„ μ‹œλ„ν•˜κ³  μƒˆλ‘œμš΄ 였λ₯˜ λ©”μ‹œμ§€κ°€ μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€.

λ‚˜λŠ” 이미 κ·Έκ²ƒμ„ν–ˆκ³  μ •ν™•νžˆ 같은 였λ₯˜κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€. ν•΄λ‹Ή μ€„μ˜ 값을 1둜 μ„€μ •ν•˜μ—¬ ν™•μΈν•˜μ§€λ§Œ μ •ν™•νžˆ 같은 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

μ΄λŸ¬ν•œ λͺ¨λ“  λ©”μ‹œμ§€λŠ” μ˜ˆμƒλ˜λ©° λ‘œκ·ΈμΈν•˜λ©΄ μ‚¬λΌμ§‘λ‹ˆλ‹€.
λ‹€λ₯Έ 였λ₯˜κ°€ μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 였λ₯˜λŠ” λ³€κ²½ν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.
λ˜λŠ” κ³ μ •λœ κ²½μš°μ—λŠ” 정보 제곡용일 λΏμž…λ‹ˆλ‹€.

λ§žμŠ΅λ‹ˆλ‹€. 저도 같은 말을 ν•˜μ§€λ§Œ μ΄μƒν•œ 점은 μ„Έμ…˜μ„ μ‹œμž‘ν•  λ•Œ 데이터가 μ˜¬λ°”λ₯΄μ§€ μ•Šκ³  맀일 μ‚¬μš©ν•˜λ©΄μ„œ 넣은 데이터에 λŒ€ν•΄ 맀우 ν™•μ‹ ν•œλ‹€κ³  μ•Œλ €μ£ΌλŠ” κ²ƒμž…λ‹ˆλ‹€.

PHPκ°€ μ§€μ •λœ MySQL λ°μ΄ν„°λ² μ΄μŠ€μ— μ—°κ²°ν•  수 μ—†λŠ” 것 κ°™μœΌλ―€λ‘œ λ¨Όμ € ν¬νŠΈκ°€ μ •ν™•ν•˜κ³  철자 였λ₯˜κ°€ μ—†λŠ”μ§€ ν™•μΈν•˜κ³  MySQL ν¬νŠΈκ°€ CentOS λ˜λŠ” VestaCP에 μ˜ν•΄ μ°¨λ‹¨λ˜μ§€ μ•Šμ•˜λŠ”μ§€ ν™•μΈν•©λ‹ˆλ‹€.

λ˜λŠ” include/includes.php νŒŒμΌμ—μ„œ $configstyle 값을 "2"둜 λ³€κ²½ν•˜κ³  μ²¨λΆ€λœ config.json ν…œν”Œλ¦Ώμ„ μ‚¬μš©ν•˜μ—¬ /tmp 폴더에 μˆ˜λ™ ꡬ성을 μ—…λ‘œλ“œν•˜μ—¬ 둜컬 ꡬ성 λͺ¨λ“œλ₯Ό ν™œμ„±ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

config.zip

μ•ˆλ…•ν•˜μ„Έμš” 친ꡬ, μΆ”κ°€ ꡬ성은 ./tmp 폴더에 config.json이 μ„€μΉ˜λ˜μ–΄ μžˆμ–΄λ„ μ •ν™•νžˆ λ™μΌν•˜κ²Œ μœ μ§€λ©λ‹ˆλ‹€.

ν¬νŠΈκ°€ 3306이고 μ—΄λ € μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€. μ™œ μ—¬μ „νžˆλ‘œλ“œλ˜μ§€ μ•ŠλŠ”μ§€ μ΄ν•΄κ°€λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ£„μ†‘ν•©λ‹ˆλ‹€. 문제λ₯Ό 잘λͺ» μ΄ν•΄ν–ˆμŠ΅λ‹ˆλ‹€. 에 μ—°κ²°ν•  수 μžˆμ„ 것 κ°™μŠ΅λ‹ˆλ‹€.
MySQLμ΄μ§€λ§Œ VestaCP API에 μ—°κ²°ν•  수 μ—†μŠ΅λ‹ˆλ‹€. μ—°κ²°ν•  수 μžˆλŠ”μ§€ 확인
κ·€ν•˜μ˜ 도메인. com:8083/api . 빈 흰색 νŽ˜μ΄μ§€κ°€ ν‘œμ‹œλ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. 그것이 νš¨κ³Όκ°€ μžˆλ‹€λ©΄
아직 μ„€λͺ…이 μ—†μœΌλ©΄ VestaCP μ„œλ²„μ—μ„œ SSHλ₯Ό μ‚¬μš©ν•˜κ³ 
'v-generate-api-key' λͺ…λ Ή, 인증 방법을 'api'둜 μ „ν™˜
μ—°κ²°ν•  수 μžˆλŠ”μ§€ ν™•μΈν•©λ‹ˆλ‹€.

ν•˜μ§€λ§Œ κ·Έ APIλ₯Ό μ–΄λŠ 뢀뢄에 λ°°μΉ˜ν•©λ‹ˆκΉŒ? μ •ν™•νžˆ μ–΄λ–€ 라인?

SSH 터미널 및/λ˜λŠ” λΈŒλΌμš°μ €μ—μ„œ μ•‘μ„ΈμŠ€ν•  수 μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€. NS
자격 증λͺ…은 MySQL config λ˜λŠ” config.json에 λ“€μ–΄κ°‘λ‹ˆλ‹€.
λ² μŠ€νƒ€ 방식 κ°’.

Vesta λ©”μ„œλ“œλ₯Ό API둜 λ³€κ²½ν•˜μ—¬ λ¬Έμ œκ°€ 계속 λ°œμƒν•©λ‹ˆλ‹€. 빈 ν•„λ“œμ— APIλ₯Ό μž…λ ₯ν•˜κ³  κ·ΈλŒ€λ‘œ μœ μ§€ν•©λ‹ˆλ‹€.

Vesta λ©”μ„œλ“œλ₯Ό API둜 λ³€κ²½ν•˜μ—¬ λ¬Έμ œκ°€ 계속 λ°œμƒν•©λ‹ˆλ‹€. 빈 ν•„λ“œμ— APIλ₯Ό μž…λ ₯ν•˜κ³  κ·ΈλŒ€λ‘œ μœ μ§€ν•©λ‹ˆλ‹€.

Vesta λ©”μ„œλ“œλ₯Ό API둜 λ³€κ²½ν•˜μ—¬ λ¬Έμ œκ°€ 계속 λ°œμƒν•©λ‹ˆλ‹€. 빈 ν•„λ“œμ— APIλ₯Ό μž…λ ₯ν•˜κ³  κ·ΈλŒ€λ‘œ μœ μ§€ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”, 저도 같은 문제λ₯Ό κ²ͺκ³  μžˆμŠ΅λ‹ˆλ‹€. ν•˜λ£¨ 쒅일 이 μž‘μ—…μ„ μˆ˜ν–‰ν•˜λ €κ³  ν–ˆμŠ΅λ‹ˆλ‹€. λͺ¨λ“  검사λ₯Ό μ™„λ£Œν–ˆμ§€λ§Œ μ—¬μ „νžˆ μ„œλ²„μ— μ—°κ²°ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€. ꡬ성을 ν™•μΈν•˜μ‹­μ‹œμ˜€. μ–΄λ””μ—μ„œ 확인할 수 μžˆλŠ” λ‘œκ·Έκ°€ μžˆμŠ΅λ‹ˆκΉŒ? 연결이 μ‹€νŒ¨ν•©λ‹ˆκΉŒ?

λ‹€μŒκ³Ό 같은 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 색인: 67ν–‰μ˜ /home/user/web/control.holbrookhosting.co.uk/public_html/includes/includes.php의 μ‚¬μš©μž 이름

$initialusername = base64_decode($_SESSION['μ‚¬μš©μž 이름']);

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 인덱슀: 68ν–‰μ—μ„œ /home/user/web/control.holbrookhosting.co.uk/public_html/includes/includes.php에 λ‘œκ·ΈμΈν–ˆμŠ΅λ‹ˆλ‹€.

$loggedin = base64_decode($_SESSION['loggedin']);

κ²½κ³ : array_values()λŠ” λ§€κ°œλ³€μˆ˜ 1이 배열일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•©λ‹ˆλ‹€. null은 41ν–‰μ˜ /home/user/web/control.holbrookhosting.co.uk/public_html/login.php에 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

$serverconnection = array_values(json_decode(curl_exec($curl0), true))[0]['OS'];

ν•΄κ²°:
κ²½κ³ : array_values()λŠ” λ§€κ°œλ³€μˆ˜ 1이 배열일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•©λ‹ˆλ‹€. null은 41ν–‰μ˜ /home/user/web/control.holbrookhosting.co.uk/public_html/login.php에 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

κ΅μ²΄ν•˜μ—¬
$serverconnection = array_values(json_decode(curl_exec($curl0), true))[0]['OS'];
와 ν•¨κ»˜
$serverconnection = is_array(json_decode(curl_exec($curl0), true))? array_values(json_decode(curl_exec($curl0), true))[0]['OS']: array();

@Holbroom ν•΄λ‹Ή 쀄을 λ³€κ²½ν•œ ν›„ μ„±κ³΅μ μœΌλ‘œ λ‘œκ·ΈμΈν•  수 μžˆμŠ΅λ‹ˆκΉŒ? ν•΄λ‹Ή 라인의 λͺ©μ μ€ Vesta μ„œλ²„μ— λŒ€ν•œ κΈ°λ³Έ ν˜ΈμΆœμ„ μˆ˜ν–‰ν•˜κ³  μ—°κ²°ν•  수 μ—†λŠ” 경우 였λ₯˜λ₯Ό μƒμ„±ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 반면 이 νŽΈμ§‘μ€ μ—°κ²°ν•  수 μ—†λŠ” 경우 호좜이 μ‹€νŒ¨ν•˜λŠ” 것을 λ°©μ§€ν•©λ‹ˆλ‹€.

확인할 수 μžˆλŠ” 둜그 쀑 ν•˜λ‚˜λŠ” Vesta 인증 둜그(/usr/local/vesta/log/auth.log)둜, λͺ¨λ“  νŽ˜μ΄μ§€ λ‘œλ“œμ— λŒ€ν•΄ μƒˆ 이벀트λ₯Ό ν‘œμ‹œν•˜κ³  인증/자격 증λͺ… 문제λ₯Ό ν‘œμ‹œν•΄μ•Ό ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”,
λΆˆν–‰νžˆλ„ μˆ˜μ •μ€ 별 차이가 μ—†μ—ˆμ§€λ§Œ νŽ˜μ΄μ§€λ₯Ό λ°©λ¬Έν•˜μ—¬ μ†ŒμŠ€λ₯Ό 보면 μ—¬λŸ¬ 였λ₯˜λ₯Ό λ³Ό 수 있으며 무엇이 잘λͺ»λ˜μ—ˆλŠ”지 μ†”μ§νžˆ μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€.
https://control.holbrookhosting.co.uk

μˆ˜λ™ μ„€μΉ˜λ₯Ό 3번 μˆ˜ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. ν•˜μœ„ λ„λ©”μΈμ—μ„œ ν•œ 번, κΈ°λ³Έ λ„λ©”μΈμ˜ λ””λ ‰ν† λ¦¬μ—μ„œ 두 번, 항상 같은 λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. μ΄μƒν•˜κ²Œλ„ μžλ™ μ„€μΉ˜λ₯Ό μ‹€ν–‰ν•  λ•Œ λ‹€μŒκ³Ό 같은 κ²°κ³Όκ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

였λ₯˜: VWIλŠ” Debian, Ubuntu, CentOS λ˜λŠ” RHELμ—λ§Œ μ„€μΉ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ’…λ£Œ 쀑...\n

ν•˜μ§€λ§Œ λ‚˜λŠ” centosλ₯Ό μ‹€ν–‰ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

고양이 /etc/centos-release

CentOS 릴리슀 6.10(μ΅œμ’…)

@Holbroom 각 λͺ…령을 μ‹€ν–‰ν•œ λ‹€μŒ 좜λ ₯을 λΆ™μ—¬λ„£μœΌμ„Έμš”.

  • source /etc/os-release | echo $NAME
  • lsb_release -si
  • source /etc/lsb-release | echo $DISTRIB_ID

λ‹€μŒμ€ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ΄ OSλ₯Ό κ²°μ •ν•˜λŠ” 데 μ‚¬μš©ν•˜λŠ” λͺ…λ Ήμ΄μ§€λ§Œ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ— μ² μžκ°€ 잘λͺ»λ˜μ—ˆκ±°λ‚˜ λˆ„λ½λœ ν•­λͺ©μ΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

특히 λ‚΄ μ‚¬μš©μžμ˜ 거의 절반이 CentOSλ₯Ό μ‚¬μš©ν•˜κ³  이전에 이 λ¬Έμ œμ— λŒ€ν•΄ λ“€μ–΄λ³Έ 적이 μ—†λ‹€λŠ” 점을 κ³ λ €ν•˜λ©΄ μ΄μƒν•©λ‹ˆλ‹€.

λ˜ν•œ /home/user/web/control.holbrookhosting.co.uk/public_html/ 폴더에 λ‹€μŒ μ½”λ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ test.php λΌλŠ” νŒŒμΌμ„ λ§Œλ“€μ–΄ curl λͺ…λ Ήκ³Ό μ„œλ²„μ˜ μ›μ‹œ 좜λ ₯을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. μ—°κ²°.

<?php

session_start(); $configlocation = "includes/"; require('includes/includes.php');

$postvars = array(
   array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-info','arg1' => 'json'),
   array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-config','arg1' => 'json'));

$curl0 = curl_init();$curl1 = curl_init(); $curlstart = 0; 

while($curlstart <= 1) {
    curl_setopt(${'curl' . $curlstart}, CURLOPT_URL, $vst_url);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_RETURNTRANSFER,true);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_POST, true);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_POSTFIELDS, http_build_query($postvars[$curlstart]));
    $curlstart++;
} 
print_r(curl_exec($curl0)); print_r(curl_exec($curl1));

μ•ˆλ…•ν•˜μ„Έμš”, λ‚˜λŠ” 그와 λ˜‘κ°™μ€ 것을 μ–»μŠ΅λ‹ˆλ‹€. μ •ν™•νžˆ λ˜‘κ°™μ€ κ²ƒμž…λ‹ˆλ‹€. 그리고 test.phpλ₯Ό μƒμ„±ν•˜κ³  μ•‘μ„ΈμŠ€ν•  λ•Œ λ‹€μŒμ„ μ–»μŠ΅λ‹ˆλ‹€.

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 인덱슀: 67ν–‰μ˜ /home/admin/web/pop.vps.co.ve/public_html/includes/includes.php의 μ‚¬μš©μž 이름

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ 인덱슀: 68ν–‰μ—μ„œ /home/admin/web/pop.vps.co.ve/public_html/includes/includes.php에 λ‘œκ·ΈμΈν–ˆμŠ΅λ‹ˆλ‹€.

@FulltronService μ’‹μŠ΅λ‹ˆλ‹€. test.php의 μ½”λ“œλ₯Ό λ‹€μŒμœΌλ‘œ κ΅μ²΄ν•˜κ³  좜λ ₯을 ν™•μΈν•˜μ‹­μ‹œμ˜€.

<?php

require("includes/config.php"); 
print_r(mysqli_query(mysqli_connect($mysql_server,$mysql_uname,$mysql_pw,$mysql_db),"SELECT VARIABLE,VALUE FROM " . $mysql_table . "config"));
mysqli_close($con);

이제 λ‚˜λŠ” 이것을 μ–»λŠ”λ‹€.

mysqli_result 객체 ( [current_field] => 0 [field_count] => 2 [lengths] => [num_rows] => 50 [type] => 0 )
μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ λ³€μˆ˜: con in /home/admin/web/pop.vps.co.ve/public_html/test.php on line 5

κ²½κ³ : mysqli_close()λŠ” λ§€κ°œλ³€μˆ˜ 1이 mysqli일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•˜λ©°, 5ν–‰μ˜ /home/admin/web/pop.vps.co.ve/public_html/test.php에 null이 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

@FulltronService μ•Œκ² μŠ΅λ‹ˆλ‹€.

<?php

require("includes/config.php"); 

$result = mysqli_query(mysqli_connect($mysql_server,$mysql_uname,$mysql_pw,$mysql_db),"SELECT VARIABLE,VALUE FROM " . $mysql_table . "config");

while ($row = mysqli_fetch_assoc($result)) { echo $row["VARIABLE"] . " "  . $row["VALUE"] . "\n <br>"; }
mysqli_close($con);

TIMEZONE 아메리카/라_파슀
SITE_NAME λ°±μ—… μ„œλ²„
ν…Œλ§ˆ μ˜€λ Œμ§€
μ–Έμ–΄ es_US.utf8
DEFAULT_TO_ADMIN μ°Έ
VESTA_HOST_ADDRESS https://pop.vps.co.ve
VESTA_SSL_ENABLED μ°Έ
λ² μŠ€νƒ€_포트 8083
VESTA_METHOD 자격 증λͺ…
λ² μŠ€νƒ€_API_KEY
VESTA_ADMIN_UNAME κ΄€λ¦¬μž
VESTA_ADMIN_PW λΉ„λ°€λ²ˆν˜Έ
KEY1 VmeE4TYY
KEY2 kii7f7kt
WARNINGS_ENABLED κ΄€λ¦¬μž
ICON admin-logo.png
둜고 admin-text.png
νŒŒλΉ„μ½˜ favicon.ico
WEB_ENABLED μ°Έ
DNS_ENABLED μ°Έ
MAIL_ENABLED μ°Έ
DB_ENABLED μ°Έ
ADMIN_ENABLED μ°Έ
PROFILE_ENABLED μ°Έ
CRON_ENABLED μ°Έ
BACKUPS_ENABLED μ°Έ
REGISTRATIONS_ENABLED 거짓
SOFTACULOUS_URL μ°Έ
OLD_CP_LINK μ°Έ
PHPMAIL_ENABLED 거짓
MAIL_FROM hello@https ://pop.vps.co.ve
MAIL_NAME λ°±μ—… μ„œλ²„
SMTP_ENABLED 거짓
SMTP_PORT 587
SMTP_HOST
SMTP_AUTH μ°Έ
SMTP_UNAME
SMTP_PW
SMTP_ENC tls
FTP_URL
WEBMAIL_URL
PHPMYADMIN_URL
PHPPGADMIN_URL
SUPPORT_URL https://fulltron.net
ν”ŒλŸ¬κ·ΈμΈ
GOOGLE_ANALYTICS_ID
INTERAKT_APP_ID
μΈν„°λž™T_API_KEY
CLOUDFLARE_API_KEY
CLOUDFLARE_EMAIL

주의: μ •μ˜λ˜μ§€ μ•Šμ€ λ³€μˆ˜: con in /home/admin/web/pop.vps.co.ve/public_html/test.php on line 8

κ²½κ³ : mysqli_close()λŠ” λ§€κ°œλ³€μˆ˜ 1이 mysqli일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•˜κ³ , 8ν–‰μ˜ /home/admin/web/pop.vps.co.ve/public_html/test.php에 null이 μ£Όμ–΄μ‘ŒμŠ΅λ‹ˆλ‹€.

@FulltronService VESTA_HOST_ADDRESS 에 λ¬Έμ œκ°€ μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 전체 URL을 μž…λ ₯ν•˜λŠ” 반면 호슀트 이름 λ˜λŠ” IP μ£Όμ†Œμ—¬μ•Ό ν•©λ‹ˆλ‹€. MySQL λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ https://pop.vps.co.ve λ₯Ό pop.vps.co.ve 둜 λ°”κΎΈμ‹­μ‹œμ˜€.

μ€€λΉ„, λ¬Έμ œκ°€ ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€ :)

였λ₯˜κ°€ ν‘œμ‹œλ˜μ§€λ§Œ μ—¬μ „νžˆ 일뢀 κ²½κ³ κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€. μ •μƒμž…λ‹ˆκΉŒ?

@FulltronService λ„€, php_flag display_errors λ₯Ό 끌 수 있으며 μ΄λŠ” μ‚¬λΌμ§‘λ‹ˆλ‹€.

λ˜ν•œ μ•žμœΌλ‘œ 이 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•Šλ„λ‘ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ— 일뢀 μ½”λ“œλ₯Ό μΆ”κ°€ν•  κ²ƒμž…λ‹ˆλ‹€.

ν›Œλ₯­ν•œ 친ꡬ, 당신이 λ‚˜μ—κ²Œ μ€€ 도움에 λŒ€ν•΄ 맀우 κ°μ‚¬ν•©λ‹ˆλ‹€. λ² λ„€μˆ˜μ—˜λΌκ°€ μ•„λ‹ˆμ—ˆλ‹€λ©΄ κΈ°λΆ€ν–ˆμ„ κ²ƒμž…λ‹ˆλ‹€ :(

비둝 μš°λ¦¬λŠ” μ†μ΄μ§€λ§Œ.

@FulltronService λ„μ™€λ“œλ¦΄ 수 μžˆμ–΄μ„œ κΈ°μ©λ‹ˆλ‹€ :)

λ‹€λ₯Έ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. 웹을 κ΅¬μ„±ν•˜λ €κ³  ν•  λ•Œ λ‹€μŒμ„ μ–»μŠ΅λ‹ˆλ‹€.

μ›Ή 도메인 μ—…λ°μ΄νŠΈ 쀑 였λ₯˜ λ°œμƒ
(E: 0.0.0.0.0.0.4.OK.0)

λ‹€μ‹œ μ‹œλ„ν•˜κ±°λ‚˜ μ§€μ›νŒ€μ— λ¬Έμ˜ν•˜μ„Έμš”.

보톡이닀? μ›Ή ꡬ성을 μ €μž₯ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

도메인을 νŽΈμ§‘ν•˜κ±°λ‚˜ 생성할 λ•Œμž…λ‹ˆκΉŒ?

쒋은 μ•„μΉ¨,
μœ„μ™€ 같이 ν•΄λ΄€λŠ”λ° μ—¬μ „νžˆ μ•ˆλ˜λ„€μš”....

[ root@holbrookhosting 포함]# μ†ŒμŠ€ /etc/os-release | 에코 $NAME
-bash: /etc/os-release: ν•΄λ‹Ή νŒŒμΌμ΄λ‚˜ 디렉토리가 μ—†μŠ΅λ‹ˆλ‹€.

[ root@holbrookhosting 포함]# lsb_release -si
μ„ΌνŠΈOS

[ root@holbrookhosting 포함]# μ†ŒμŠ€ /etc/lsb-release | 에코 $DISTRIB_ID
-빈 좜λ ₯-

https://control.holbrookhosting.co.uk/test.php

λ˜ν•œ λ‹€λ₯Έ μ½”λ“œμ˜ 좜λ ₯.
ADMIN_ENABLED μ°Έ
BACKUPS_ENABLED μ°Έ
CLOUDFLARE_API_KEY
CLOUDFLARE_EMAIL
CRON_ENABLED μ°Έ
DB_ENABLED μ°Έ
DEFAULT_TO_ADMIN μ°Έ
DNS_ENABLED μ°Έ
νŒŒλΉ„μ½˜ favicon.ico
FTP_URL
GOOGLE_ANALYTICS_ID
ICON admin-logo.png
μΈν„°λž™T_API_KEY
INTERAKT_APP_ID
ν‚€1 JbWm3BPP
ν‚€2 PWkDVBjN
μ–Έμ–΄ ko_US.utf8
둜고 admin-text.png
MAIL_ENABLED μ°Έ
MAIL_FROM [email protected]
MAIL_NAME ν™€λΈŒλ£© ν˜ΈμŠ€νŒ…
OLD_CP_LINK 거짓
PHPMAIL_ENABLED 거짓
PHPMYADMIN_URL
PHPPGADMIN_URL
ν”ŒλŸ¬κ·ΈμΈ
PROFILE_ENABLED μ°Έ
REGISTRATIONS_ENABLED 거짓
SITE_NAME ν™€λΈŒλ£© ν˜ΈμŠ€νŒ…
SMTP_AUTH μ°Έ
SMTP_ENABLED 거짓
SMTP_ENC tls
SMTP_HOST
SMTP_PORT 587
SMTP_PW
SMTP_UNAME
SOFTACULOUS_URL 거짓
SUPPORT_URL
ν…Œλ§ˆ κΈ°λ³Έκ°’
TIMEZONE 유럽/런던
VESTA_ADMIN_PW -μˆ¨κ²¨μ§„-
VESTA_ADMIN_UNAME κ΄€λ¦¬μž
λ² μŠ€νƒ€_API_KEY
VESTA_HOST_ADDRESS 176.9.155.162
VESTA_METHOD 자격 증λͺ…
λ² μŠ€νƒ€_포트 8083
VESTA_SSL_ENABLED μ°Έ
WARNINGS_ENABLED κ΄€λ¦¬μž
WEBMAIL_URL
WEB_ENABLED μ°Έ

μ•Œλ¦Ό: μ •μ˜λ˜μ§€ μ•Šμ€ λ³€μˆ˜: con /home/admin/web/control.holbrookhosting.co.uk/public_html/test2.php 8ν–‰

κ²½κ³ : mysqli_close()λŠ” λ§€κ°œλ³€μˆ˜ 1이 mysqli일 κ²ƒμœΌλ‘œ μ˜ˆμƒν•©λ‹ˆλ‹€. null은 8ν–‰μ˜ /home/admin/web/control.holbrookhosting.co.uk/public_html/test2.php에 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

@Holbroom 176.9.155.162 κ°€ holbrookhosting.co.uk 둜 λ¦¬λ””λ ‰μ…˜λ˜λŠ” 호슀트 이름에 λ¦¬λ””λ ‰μ…˜μ΄ μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. 이것이 λ¬Έμ œμΈμ§€ ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ VWIκ°€ μ•‘μ„ΈμŠ€ν•˜μ§€ λͺ»ν•˜λ„둝 λ¦¬λ””λ ‰μ…˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. API. λ‹€μ‹œ λ§ν•˜μ§€λ§Œ, test.php의 λͺ¨λ“  좜λ ₯은 μ™„λ²½ν•΄ λ³΄μ΄λ―€λ‘œ API μš”μ²­κ³Ό ν•¨κ»˜ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

λ˜ν•œ /etc/os-release 이 λˆ„λ½λœ 것은 μ΄μƒν•©λ‹ˆλ‹€. λͺ¨λ“  Linux λ¦΄λ¦¬μŠ€μ—μ„œ μž‘λ™ν•œλ‹€κ³  λ―ΏκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ μˆ˜μ •ν•˜λ €κ³  μ‹œλ„ν•˜κ³  λ°±μ—… κ²€μ‚¬λ‘œ /etc/centos-release λ₯Ό μΆ”κ°€ν•˜κ² μŠ΅λ‹ˆλ‹€. .

VESTA_HOST_ADDRESSλ₯Ό IP μ£Όμ†Œμ—μ„œ holbrookhosting.co.uk둜 λ³€κ²½ν–ˆμ§€λ§Œ μ—¬μ „νžˆ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 이것은 맀우 μ‹€λ§μŠ€λŸ½μŠ΅λ‹ˆλ‹€. 이 μž‘μ—…μ„ μˆ˜ν–‰ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.

@Holbroom λ‚΄κ°€ κ²Œμ‹œν•œ test.php μ½”λ“œμ˜ 첫 번째 λΉ„νŠΈ 좜λ ₯을 뢙여넣을 수 μžˆμŠ΅λ‹ˆκΉŒ?

첫 번째 λΉ„νŠΈμ˜ 좜λ ₯을 λΆ™μ—¬λ„£λŠ”λ‹€λŠ” 것이 무슨 λœ»μΈμ§€ 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€.
test.phpλŠ” λ‹€μŒ URLμ—μ„œ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

https://control.holbrookhosting.co.uk/test.php

이것은 test.php 뒀에 μžˆλŠ” μ½”λ“œμž…λ‹ˆλ‹€.

`

μ„Έμ…˜ μ‹œμž‘(); $configlocation = "포함/"; require('포함/포함.php');

$postvars = λ°°μ—΄(
array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-info','arg1' => 'json'),
array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-config','arg1' => 'json'));

$curl0 = curl_init();$curl1 = curl_init(); $curlstart = 0;

λ™μ•ˆ($curlstart <= 1) {
curl_setopt(${'curl' . $curlstart}, CURLOPT_URL, $vst_url);
curl_setopt(${'curl' . $curlstart}, CURLOPT_RETURNTRANSFER,true);
curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYPEER, 거짓);
curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYHOST, 거짓);
curl_setopt(${'curl' . $curlstart}, CURLOPT_POST, true);
curl_setopt(${'curl' . $curlstart}, CURLOPT_POSTFIELDS, http_build_query($postvars[$curlstart]));
$curlstart++;
}
print_r(curl_exec($curl0)); print_r(curl_exec($curl1));`

이 μ½”λ“œλ‘œ λ³€κ²½ν•˜κ³  λ³€κ²½λ˜λŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€.

<?php

session_start(); $configlocation = "includes/"; require('includes/includes.php');

$postvars = array(
   array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-info','arg1' => 'json'),
   array('user' => $vst_username,'password' => $vst_password,'cmd' => 'v-list-sys-config','arg1' => 'json'));

$curl0 = curl_init();$curl1 = curl_init(); $curlstart = 0; 

while($curlstart <= 1) {
curl_setopt(${'curl' . $curlstart}, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_URL, $vst_url);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_RETURNTRANSFER,true);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt(${'curl' . $curlstart}, CURLOPT_POST, true);
    curl_setopt(${'curl' . $curlstart}, 
CURLOPT_POSTFIELDS, http_build_query($postvars[$curlstart]));
    $curlstart++;
} 
print_r(curl_exec($curl0)); print_r(curl_exec($curl1));

test.php νŒŒμΌμ„ μ—…λ°μ΄νŠΈν–ˆλŠ”λ° λ³€κ²½λœ 사항이 μžˆμŠ΅λ‹ˆκΉŒ?

도메인을 νŽΈμ§‘ν•˜κ±°λ‚˜ 생성할 λ•Œμž…λ‹ˆκΉŒ?

μ •ν™•νžˆλŠ” 항상 κ·Έ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

test.php νŒŒμΌμ„ μ—…λ°μ΄νŠΈν–ˆλŠ”λ° λ³€κ²½λœ 사항이 μžˆμŠ΅λ‹ˆκΉŒ?

0μ—μ„œ λ‹€μ‹œ μ„€μΉ˜ν•œ λ‹€μŒ νŒ¨λ„μ— μ‚¬μš© 쀑인 λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ œκ±°ν•΄ λ³΄μ‹­μ‹œμ˜€.

μ•„λ§ˆλ„ 일반적인 ꡬ성 문제일 수 μžˆμŠ΅λ‹ˆλ‹€. 그런 λ‹€μŒ HOSTκ°€ https://example.com/ 이 μ•„λ‹ˆλΌ example.com인지 확인

test.php νŒŒμΌμ„ μ—…λ°μ΄νŠΈν–ˆλŠ”λ° λ³€κ²½λœ 사항이 μžˆμŠ΅λ‹ˆκΉŒ?

0μ—μ„œ λ‹€μ‹œ μ„€μΉ˜ν•œ λ‹€μŒ νŒ¨λ„μ— μ‚¬μš© 쀑인 λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ œκ±°ν•΄ λ³΄μ‹­μ‹œμ˜€.

μ•„λ§ˆλ„ 일반적인 ꡬ성 문제일 수 μžˆμŠ΅λ‹ˆλ‹€. 그런 λ‹€μŒ HOSTκ°€ https://example.com/ 이 μ•„λ‹ˆλΌ example.com인지 확인

이미 4번 μ„€μΉ˜λ₯Ό μ‹œλ„ν–ˆλŠ”λ° λ™μΌν•œ 였λ₯˜ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ  λ•Œλ§ˆλ‹€ IP 및 example.com λ„λ©”μΈμœΌλ‘œ μ‹œλ„ν–ˆλŠ”λ° λ‘˜ λ‹€ λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•˜κ³  Cenotsκ°€ 64λΉ„νŠΈμΈλ° 영ν–₯을 쀄 수 μžˆμŠ΅λ‹ˆκΉŒ? μžλ™ μ„€μΉ˜ μŠ€ν¬λ¦½νŠΈλ„ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μž‘λ™ν•  λ•Œ Centosλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€κ³  ν‘œμ‹œλ©λ‹ˆλ‹€.

이미 4번 μ„€μΉ˜λ₯Ό μ‹œλ„ν–ˆλŠ”λ° λ™μΌν•œ 였λ₯˜ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ  λ•Œλ§ˆλ‹€ IP 및 example.com λ„λ©”μΈμœΌλ‘œ μ‹œλ„ν–ˆλŠ”λ° λ‘˜ λ‹€ λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•˜κ³  Cenotsκ°€ 64λΉ„νŠΈμΈλ° 영ν–₯을 쀄 수 μžˆμŠ΅λ‹ˆκΉŒ? μžλ™ μ„€μΉ˜ μŠ€ν¬λ¦½νŠΈλ„ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μž‘λ™ν•  λ•Œ Centosλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€κ³  ν‘œμ‹œλ©λ‹ˆλ‹€.

저도 64λΉ„νŠΈ μ„ΌνŠΈλ₯Ό μ‚¬μš©ν•˜λŠ”λ° μ„€μ • 파일 λΉΌκ³ λŠ” μ„€μΉ˜μ— λ¬Έμ œκ°€ μ—†μ—ˆκΈ° λ•Œλ¬Έμ— 그게 μ‚¬μ‹€μ΄λΌλ‹ˆ μ°Έ μ΄μƒν•©λ‹ˆλ‹€. 개발 도ꡬλ₯Ό μ„€μΉ˜ν•˜μ…¨μŠ΅λ‹ˆκΉŒ?

λ‚˜λŠ” λ‚΄ Centos 버전이 7이라고 λ§λΆ™μž…λ‹ˆλ‹€. VestaCP λ„λ©”μΈμ˜ 였λ₯˜ λ ˆμ§€μŠ€νŠΈλ¦¬μ—μ„œ λ•Œλ•Œλ‘œ λ¬Έμ œκ°€ PHP-FCGI에 λŒ€ν•œ 것일 수 있고 λ‚˜μ—κ²Œ λ°œμƒν–ˆκ³  이미 지원 외뢀에 μžˆλ‹€λŠ” 사싀을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. μ„€μΉ˜ 쀑인 νŒ¨λ„ . μž…λ ₯ν•˜λ €λ©΄ μ–΄λ–€ κ²½μš°μ—λ„ ν•΄λ‹Ή λ ˆμ½”λ“œμ— λ‹€μŒκ³Ό 같이 μž…λ ₯ν•˜μ‹­μ‹œμ˜€.

μ œμ–΄νŒ(Original VestaCP νŒ¨λ„) > μ›Ή > 둜그 보기(λ‚΄ 도메인) > ErrorLog

λ‚˜λŠ” λ‚΄ Centos 버전이 7이라고 λ§λΆ™μž…λ‹ˆλ‹€. VestaCP λ„λ©”μΈμ˜ 였λ₯˜ λ ˆμ§€μŠ€νŠΈλ¦¬μ—μ„œ λ•Œλ•Œλ‘œ λ¬Έμ œκ°€ PHP-FCGI에 λŒ€ν•œ 것일 수 있고 λ‚˜μ—κ²Œ λ°œμƒν–ˆκ³  이미 지원 외뢀에 μžˆλ‹€λŠ” 사싀을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. μ„€μΉ˜ 쀑인 νŒ¨λ„ . μž…λ ₯ν•˜λ €λ©΄ μ–΄λ–€ κ²½μš°μ—λ„ ν•΄λ‹Ή λ ˆμ½”λ“œμ— λ‹€μŒκ³Ό 같이 μž…λ ₯ν•˜μ‹­μ‹œμ˜€.

μ œμ–΄νŒ(Original VestaCP νŒ¨λ„) > μ›Ή > 둜그 보기(λ‚΄ 도메인) > ErrorLog

VestaCP νŒ¨λ„μ— λ¬Έμ œκ°€ μžˆλŠ” 경우 μ΄μœ κ°€ μžˆμ„ κ²ƒμž…λ‹ˆλ‹€(λŒ€κΈ° μ‹œκ°„ μ œν•œ λ•Œλ¬ΈμΈ 경우, 잘λͺ»λœ κΈ°λŠ₯이 μžˆλŠ” 경우 λ˜λŠ” λ™μ‹œ μš”μ²­ μˆ˜κ°€ μ œν•œμ„ μ΄ˆκ³Όν•˜κΈ° λ•Œλ¬ΈμΈ 경우)

@cdgco 같은 생각이

문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ λͺ‡ 가지 μ œμ•ˆμ„ ν•΄μ£Όμ‹€ 수 μžˆμŠ΅λ‹ˆκΉŒ?

문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ λͺ‡ 가지 μ œμ•ˆμ„ ν•΄μ£Όμ‹€ 수 μžˆμŠ΅λ‹ˆκΉŒ?

@cdgco에 뭐라고 μ¨μžˆλŠ”μ§€ λ³΄κ³ μ‹Άμ–΄μš”

건배, λͺ¨λ“  도움에 μ§„μ‹¬μœΌλ‘œ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€. 이 μž‘μ—…μ„ μˆ˜ν–‰ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.

@cdgco 방금 또 λ‹€λ₯Έ 문제λ₯Ό 발견

였λ₯˜ λ‘œκ·Έκ°€ ν‘œμ‹œλ˜κΈ° μ‹œμž‘ν•˜λ©΄ λ‹€μŒκ³Ό 같이 ν‘œμ‹œλ©λ‹ˆλ‹€. mod_fcgid: stderr: PHP Parse error: syntax error, unexpected ';', expecting ',' or ')' in /home/admin/web/panel.fulltron.net/public_html/create/mailaccount.php on line 125, referer: https://panel.fulltron.net/add/mailaccount.php?domain=tuservinet.com

ν•΄λ‹Ή 쀄에 μžˆλŠ” μ½”λ“œ μ„Έκ·Έλ¨ΌνŠΈλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

if($webmailurl != ''){ $webmailurlx0 = "Webmail URL: <a href='" . $webmailurl . "'>" . $webmailurl . "</a>"; $webmailurlx1 = "Webmail URL: " . $webmailurl; } else { $webmailurlx0 = ''; $webmailurlx1 = ''; } addslashes( $mail = new PHPMailer; $mail->setFrom($mailfrom, $mailname); $mail->addAddress($_POST['v_sendemail']); $mail->Subject = 'Email Credentials'; $mail->Body = 'Username: ' . $_POST['v_account'] . '@' . $_POST['v_domain'] . '<br>IMAP Hostname: ' . addslashes(VESTA_HOST_ADDRESS) . '<br>IMAP Port: 143<br>IMAP Security: STARTTLS<br>IMAP Auth Method: Normal Password<br>SMTP Hostname: ' . addslashes(VESTA_HOST_ADDRESS) . '<br>SMTP Port: 587<br>SMTP Security: STARTTLS<br>SMTP Auth Method: Normal Password<br>Password: ' . $_POST['password'] . '<br>' . addslashes($webmailurlx1); $mail->AltBody = 'Username: ' . $_POST['v_account'] . '@' . $_POST['v_domain'] . '\nIMAP Hostname: ' . addslashes(VESTA_HOST_ADDRESS) . '\nIMAP Port: 143\nIMAP Security: STARTTLS\nIMAP Auth Method: Normal Password\nSMTP Hostname: ' . addslashes(VESTA_HOST_ADDRESS) . '\nSMTP Port: 587\nSMTP Security: STARTTLS\nSMTP Auth Method: Normal Password\nPassword: ' . $_POST['password'] . '\n' . addslashes($webmailurlx0);

특히 125행은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

$mail = new PHPMailer;

κ·ΈλŠ” ";" λŒ€μ‹  "," λ˜λŠ” ")"λ₯Ό κΈ°λ‹€λ¦°λ‹€κ³  λ§ν•©λ‹ˆλ‹€. "," λ˜λŠ” ")"둜 값을 λ³€κ²½ν–ˆλŠ”λ°λ„ μ—¬μ „νžˆ λ™μΌν•œ λ©”μ‹œμ§€λ₯Ό μ •ν™•νžˆ 던쑌기 λ•Œλ¬Έμ— 이해가 λ˜μ§€ μ•ŠλŠ” 경우.

@Holbroom κ·€ν•˜μ˜ OS 버전은 였λ₯˜μ™€ 관련이 μ—†μœΌλ©° μ„€μΉ˜μ˜ μœ μΌν•œ λ¬Έμ œλŠ” OSλ₯Ό μ •ν™•ν•˜κ²Œ κ°μ§€ν•˜λŠ” 였λ₯˜μ˜€μŠ΅λ‹ˆλ‹€.

@FulltronService 각 νŽ˜μ΄μ§€μ— λ‹€λ₯Έ 의미λ₯Ό λ‚˜νƒ€λ‚΄λŠ” λ‹€λ₯Έ 였λ₯˜ μ½”λ“œκ°€ 있기 λ•Œλ¬Έμ— 이것이 μ •ν™•νžˆ μ–΄λ–€ νŽ˜μ΄μ§€μΈμ§€ μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€. νŽ˜μ΄μ§€κ°€ /edit/domain.php λ˜λŠ” /add/domain.php둜 λλ‚˜λ‚˜μš”?

μ§€κΈˆ 학ꡐ가 μžˆμ–΄μ„œ 지원을 μ œκ³΅ν•  수 있으렀면 μ‹œκ°„μ΄ μ’€ 걸릴 κ²ƒμž…λ‹ˆλ‹€.

https://panel.fulltron.net/create/mailaccount.php μž…λ‹ˆκΉŒ? 그리고 μ•Œκ² μŠ΅λ‹ˆλ‹€. κΈ°λ‹€λ¦΄κ²Œμš”.

ν•΄λ‹Ή 였λ₯˜λŠ” 컀밋 004a24fμ—μ„œ μˆ˜μ •λ˜μ—ˆμœΌλ©° v0.5.4μ—μ„œ λ¦΄λ¦¬μŠ€λ©λ‹ˆλ‹€.

@FulltronService 도메인을 μ—…λ°μ΄νŠΈν•  λ•Œ 받은 였λ₯˜λŠ” λ„λ©”μΈμ˜ SSL μΈμ¦μ„œλ₯Ό μ—…λ°μ΄νŠΈν•  λ•Œ 였λ₯˜ μ½”λ“œ 4μ˜€μŠ΅λ‹ˆλ‹€. 였λ₯˜ 4λŠ” "κ°œμ²΄κ°€ 이미 μ‘΄μž¬ν•¨"을 μ˜λ―Έν•©λ‹ˆλ‹€. μ•„λ§ˆλ„ 이미 SSL μΈμ¦μ„œκ°€ 있고 λ™μΌν•œ μΈμ¦μ„œλ₯Ό μ—…λ‘œλ“œν–ˆμ„ κ²ƒμž…λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ /usr/local/vesta/log/error.logμ—μ„œ Vesta 였λ₯˜ 둜그λ₯Ό ν™•μΈν•˜μ„Έμš”.

@Holbroom , ν•΄λ‹Ή 행을 μΆ”κ°€ν•˜λ©΄ λ¦¬λ””λ ‰μ…˜ 였λ₯˜κ°€ μˆ˜μ •λ˜μ—ˆμ§€λ§Œ cURL은 μ—¬μ „νžˆ ​​VestaCP API에 μ—°κ²°ν•˜κ±°λ‚˜ 인증할 수 μ—†μŠ΅λ‹ˆλ‹€. λ‚˜μ€‘μ— 문제λ₯Ό ν™•μΈν•˜κΈ° μœ„ν•΄ μƒˆλ‘œμš΄ ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ €κ³  ν•©λ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€. 도움을 μ£Όμ…”μ„œ 정말 κ°μ‚¬ν•©λ‹ˆλ‹€.

계정 생성 등을 μœ„ν•΄ PHPμ—μ„œ VestaCP APIλ₯Ό μ‚¬μš©ν•˜λŠ” 방법을 μ΄ν•΄ν•˜μ§€ λͺ»ν•˜μ§€λ§Œ μ—¬μ „νžˆ μ‹€νŒ¨ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. mysql λ°μ΄ν„°λ² μ΄μŠ€μ— μ—°κ²°ν•˜κ³  μžˆμ§€λ§Œ VestaCP API와 ν†΅μ‹ ν•˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

@Holbroom , λ‚˜λ„ μ΄ν•΄ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€. λͺ¨λ“  데이터가 μ •ν™•ν•΄ λ³΄μ΄μ§€λ§Œ test.phpλŠ” 데이터λ₯Ό 좜λ ₯ν•΄μ•Ό ν•˜μ§€λ§Œ λΉ„μ–΄ μžˆμ§€λ§Œ μ—°κ²° 였λ₯˜λ„ λ°œμƒν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. php λ˜λŠ” cURL에 λ¬Έμ œκ°€ μžˆμ„ 수 μžˆμ§€λ§Œ ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λ‚΄ cURL 버전이 맀우 μ˜€λž˜λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

버전: 7.19.7 2009λ…„ 11μ›” 4일

λ‚˜λŠ” 이것을 μ—…λ°μ΄νŠΈν•˜κ³  그것이 λ„μ›€μ΄λ˜λŠ”μ§€ ν™•μΈν•˜κ³  μ§€κΈˆ λΉ¨λŒ€λ₯Ό μ₯κ³  β€‹β€‹μžˆμŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” λͺ¨λ“  것을 μ—…λ°μ΄νŠΈν–ˆμ§€λ§Œ μ—¬μ „νžˆ μ•„λ¬΄λŸ° 차이가 μ—†μŠ΅λ‹ˆλ‹€.

μžλ™ μ„€μΉ˜λ₯Ό μ‹œλ„ν•˜λŠ” μ΄μœ μ— λŒ€ν•΄ λ‹€μŒ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜λŠ” 이유λ₯Ό μ•Œκ³  μžˆμŠ΅λ‹ˆκΉŒ?
였λ₯˜: VWIλŠ” Debian, Ubuntu, CentOS λ˜λŠ” RHELμ—λ§Œ μ„€μΉ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ’…λ£Œ 쀑...\n

λ˜ν•œ API에 λŒ€ν•œ cURL 연결을 ν…ŒμŠ€νŠΈν•˜λŠ” μŠ€ν¬λ¦½νŠΈμ™€ 같이 더 μ‹œλ„ν•  수 μžˆλŠ” 것이 μžˆμŠ΅λ‹ˆκΉŒ?
확인할 사항이 μžˆλŠ” 경우 PHPInfoλ₯Ό 증λͺ…ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ? https://control.holbrookhosting.co.uk/phpinfo.php

@Holbroom , λ‚΄κ°€ λ§ν–ˆλ“―μ΄ μžλ™ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ˜ μœ μΌν•œ λ¬Έμ œλŠ” OSλ₯Ό κ°μ§€ν•˜κΈ° μœ„ν•΄ λ§Œλ“  μ„Ήμ…˜μ΄ 잘λͺ» μž‘λ™ν•˜κ³  ν•œ 쀄을 더 μΆ”κ°€ν•΄μ•Ό ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.

컬 연결을 λ””λ²„κΉ…ν•˜λŠ” 슀크립트λ₯Ό μž‘μ„±ν•  κ³„νšμ΄μ§€λ§Œ μ΅œκ·Όμ— μ—¬μœ  μ‹œκ°„μ΄ 거의 μ—†μ—ˆμŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” λ‹Ήμ‹ μ˜ PHPInfoλ₯Ό μ‚΄νŽ΄λ³΄κ² μ§€λ§Œ, 그것이 λ‚˜μ—κ²Œ ν˜„μž¬ 가지고 μžˆλŠ” 것보닀 훨씬 더 λ§Žμ€ 톡찰λ ₯을 쀄 것인지 μ˜μ‹¬μŠ€λŸ½λ‹€.

λ‹€λ₯Έ μ‚¬μš©μžμ™€ λ™μΌν•œ 운영 체제 및 μ»€λ„λΏλ§Œ μ•„λ‹ˆλΌ λ™μΌν•œ PHP, Apache 및 HTTP 버전을 μ‹€ν–‰ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

@Holbroom μžλ™ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ μ •λ§λ‘œ μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄ λ‹€μŒκ³Ό 같이 κ°•μ œ μ‹€ν–‰ν•˜λŠ” μŠ€ν¬λ¦½νŠΈκ°€ μžˆμŠ΅λ‹ˆλ‹€.

#!/bin/bash
    if [ ! -z "$(ls -A ./)" ]; then
        printf "Error: Directory not empty.\nVWI must be installed in clean directory. Exiting ...\n"
        exit 1
    fi
    printf "Checking for required packages ...\n"
        if rpm -q wget &> /dev/null
    then
        echo "wget found"
    else
        echo "wget not found. Installing ..."
        yum -y install wget
    fi
    if rpm -q tar &> /dev/null
    then
        echo "tar found"
    else
        echo "tar not found. Installing ..."
        yum -y install tar
    fi
    if rpm -q git &> /dev/null
    then
        echo "git found"
    else
        echo "git not found. Installing ..."
        yum -y install git
    fi
    printf "\nInstalling Vesta Web Interface frontend ...\n"
    git clone --quiet https://github.com/cdgco/VestaWebInterface . > /dev/null
    git checkout --quiet 83fa361 > /dev/null
    if [ -f README.md ] ; then
        rm README.md
    elif [ -f 'VWI Banner.png' ] ; then
        rm 'VWI Banner.png'
    fi
    chmod 777 includes
    chmod 777 tmp
    chmod 777 plugins/images/uploads
    printf "Installing Vesta Web Interface backend ...\n"
    sleep .5
    if [ -d /usr/local/vesta/softaculous/enduser/themes/default ] ; then
        cp /usr/local/vesta/softaculous/enduser/themes/default /usr/local/vesta/softaculous/enduser/themes/original-default -r
    elif [ -d /usr/local/vesta/softaculous/enduser/themes/simple ] ; then
        cp /usr/local/vesta/softaculous/enduser/themes/simple /usr/local/vesta/softaculous/enduser/themes/original-simple -r
    fi
    wget -q https://github.com/cdgco/VestaWebInterface/releases/download/v0.5.3-Beta/backend.tar.gz
    if [ -f backend.tar.gz ] ; then
        tar -xzf backend.tar.gz -C /usr/local/
        rm backend.tar.gz
    fi
    read -p "Enter the full web address of your installation: "
        echo "<?php \$vwipanel = '$REPLY'; ?>" > /usr/local/vesta/web/vwi/config.php
    printf "\nInstallation Complete! Please visit your website online to finish configuration.\n"
fi

λ‚˜μ€‘μ— μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ κ°•μ œ μ‹€ν–‰ν•˜λŠ” μ˜΅μ…˜μ„ μ œκ³΅ν•˜κΈ° μœ„ν•΄ ν”Œλž˜κ·Έλ₯Ό μΆ”κ°€ν•  κ²ƒμž…λ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€. 였늘 λ°€ μ‚¬μ΄νŠΈλ₯Ό μ§€μš°κ³  μžλ™ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ 미리 μ œκ³΅ν•˜μ—¬ 차이가 μžˆλŠ”μ§€ ν™•μΈν•˜κ² μŠ΅λ‹ˆλ‹€. μ‹œκ°„κ³Ό λ…Έλ ₯을 λ“€μ—¬ 이 μž‘μ—…μ„ λ„μ™€μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. 건배.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰