# Webhelye élesítése

## Hová kerülnek a fájljai

Fiókja minden domainjének saját mappája van, és a webhelyét az abban található `public_html` mappából szolgáljuk ki:

```
/home/FELHASZNALO/domains/azondomainje.hu/public_html
```

A `FELHASZNALO` a fiókja felhasználóneve, amely az ügyfélfelületén látható. A `public_html` mappába feltöltött `index.php` vagy `index.html` fájl lesz a webhelye kezdőlapja.

## Fájljai feltöltése

Három út vezet ugyanahhoz a mappához; válassza az Önnek megfelelőt.

### A fájlkezelő

A vezérlőpulton a **File Manager**: töltse fel fájljait a böngészőből, akár egy `.zip` archívumot is, amelyet helyben kicsomagol. Néhány fájlhoz ez a leggyorsabb út.

### A titkosított FTP (FTPS)

Egy FTP-programban, például a FileZillában:

| Beállítás          | Érték                                                                                   |
| ------------------ | --------------------------------------------------------------------------------------- |
| **Protokoll**      | FTP, **explicit TLS-titkosítással** (FTPS)                                              |
| **Kiszolgáló**     | a szervere neve, például `web1.simafri.cloud`                                           |
| **Port**           | `21`                                                                                    |
| **Felhasználónév** | a fiókja felhasználóneve, vagy egy, az **FTP Management** rovatban létrehozott FTP-fiók |
| **Jelszó**         | a vezérlőpult jelszava, vagy az FTP-fiók jelszava                                       |

A TLS-titkosítás védi jelszavát és fájljait az átvitel során; a FileZillában válassza a **Require explicit FTP over TLS** lehetőséget. Az **FTP Management** rovatban létrehozott FTP-fiók `nev@azondomainje.hu` formájú, és egyetlen mappára korlátozható, például egy külső szolgáltató számára.

### Az SSH és az SFTP

Az SSH-hozzáférés **kulccsal** működik, amelyet a vezérlőpulton tölt fel:

1. Még nincs kulcsa? A számítógépén futtassa az `ssh-keygen -t ed25519` parancsot, majd nyissa meg a `.pub` végű fájlt: ez az Ön **nyilvános** kulcsa.
2. A vezérlőpulton nyissa meg az **SSH Keys** rovatot, és illessze be a nyilvános kulcsát.
3. Csatlakozzon:

```
ssh FELHASZNALO@web1.simafri.cloud
```

Ugyanez a kulcs nyitja meg az **SFTP**-t (`22`-es port) a FileZillában vagy a WinSCP-ben. Kizárólag a nyilvános kulcs kerül feltöltésre: a privát kulcsa a számítógépén marad.

## A PHP-verzió kiválasztása

Minden domain a **PHP Version Selector** rovatban választja ki a saját PHP-verzióját. Jelenleg a **PHP 8.4**, a **8.3** (az alapértelmezett verzió), a **8.1** és a **7.4** érhető el, OPcache-sel és a szokásos bővítményekkel: intl, mbstring, gd, curl, zip, xml, sodium, bcmath, soap, PDO a MySQL-hez és az SQLite-hoz. Alkalmazása más verziót igényel? Írjon a támogatásnak: csapatunk hozzáadja.

## Adatbázis létrehozása

1. A vezérlőpulton nyissa meg a **MySQL Databases** rovatot, és hozzon létre egy adatbázist: neve és felhasználója `FELHASZNALO_nev` formájú.
2. Jegyezze fel a felhasználó jelszavát.
3. Az alkalmazásában adja meg:

| Beállítás                        | Érték                                              |
| -------------------------------- | -------------------------------------------------- |
| **Kiszolgáló**                   | `localhost`                                        |
| **Port**                         | `3306`                                             |
| **Adatbázis** és **felhasználó** | az imént létrehozottak, például `FELHASZNALO_site` |

Az ugyanebből a rovatból megnyitható **phpMyAdmin** importál egy `.sql` fájlt, exportálja az adatbázisát, és böngészhetővé teszi a tábláit.

## Composer, Node.js és keretrendszerek

SSH-n keresztül a tárhelye futtatja:

* a **Composer 2**-t: `composer install`, `composer update`;
* a **Node.js 24**-et és az **npm**-et: `npm install`, `npm run build` a front-end vagy az assetek fordításához;
* a **Gitet**, a **Python 3**-at és a **Perlt**.

**Symfony** vagy **Laravel** esetén a domain webes gyökérkönyvtára a projekt `public/` mappája. Töltse fel a projektet a `public_html` mellé, majd cserélje le a `public_html` mappát egy, a projekt `public/` mappájára mutató hivatkozásra:

```
cd ~/domains/azondomainje.hu

mv public_html public_html.eredeti

ln -s projektem/public public_html
```

A keretrendszer parancsai (`php bin/console`, `php artisan`) a projekt mappájában futnak. **Angular**, **React** vagy **Vue** front-end esetén töltse fel az `npm run build` eredményét a `public_html` mappába, egy olyan `.htaccess` fájllal, amely az útvonalakat az `index.html` fájlra irányítja.

A folyamatosan futó alkalmazás, például egy Node.js-szerver vagy egy üzenetsor, egy [VPS Pro](https://docs.simafri.com/hu/vps-pro/) szerveren van a helyén.

## Feladat ütemezése

A **Cron Jobs** rovatban adja meg a gyakoriságot és a parancsot, például minden nap hajnali 3 órakor:

```
0 3 * * * /usr/local/bin/php /home/FELHASZNALO/domains/azondomainje.hu/projektem/bin/console app:takaritas
```

## Domainjei HTTPS-e

Minden domain és aldomain megkapja a saját Let's Encrypt **HTTPS-tanúsítványát**, automatikus igényléssel és megújítással, amint a domain a szerverére mutat. Az **SSL/TLS Certificates** rovat minden domain tanúsítványát megmutatja. Ha látogatóit mindig a `https://` címre szeretné irányítani, a `public_html` mappa `.htaccess` fájljának elejére írja be:

```
RewriteEngine On

RewriteCond %{HTTPS} off

RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
```

## Gyakori kérdések

### A webhelyem még mindig az alapértelmezett oldalt mutatja.

Kezdőlapjának közvetlenül a `public_html` mappában kell lennie, `index.php` vagy `index.html` néven, nem pedig egy almappában. Törölje az alapértelmezett oldalt, ha még ott van.

### Hogyan telepíthetem a WordPresst?

Írjon a támogatásnak, megadva a domaint: csapatunk telepíti a WordPresst a tárhelyére, és átadja Önnek az adminisztrációs felület hozzáférését.

### Az SSH-kapcsolatomat elutasítja a szerver.

Ellenőrizze, hogy **nyilvános** kulcsa szerepel-e az **SSH Keys** rovatban, és hogy fiókja **Felhasználónevével** csatlakozik-e. Az SSH-kapcsolat kulccsal működik: programjának a feltöltött kulcshoz tartozó privát kulcsot kell használnia.
