# Zveřejnění webu

## Kam patří vaše soubory

Každá doména vašeho účtu má svou složku a její web se poskytuje ze složky `public_html`, kterou obsahuje:

```
/home/USERNAME/domains/your-domain.com/public_html
```

`USERNAME` je přihlašovací jméno vašeho účtu, zobrazené ve vaší zákaznické zóně. Soubor `index.php` nebo `index.html` nahraný do `public_html` se stane úvodní stránkou vašeho webu.

## Nahrání souborů

Do téže složky vedou tři cesty; zvolte tu, která vám vyhovuje.

### Správce souborů

V panelu, **File Manager**: nahrajte soubory z prohlížeče, včetně archivu `.zip`, který rozbalíte přímo na místě. Pro několik souborů je to nejrychlejší cesta.

### Šifrované FTP (FTPS)

V programu FTP, jako je FileZilla:

| Nastavení              | Hodnota                                                                     |
| ---------------------- | --------------------------------------------------------------------------- |
| **Protokol**           | FTP, s **explicitním šifrováním TLS** (FTPS)                                |
| **Hostitel**           | název vašeho serveru, například `web1.simafri.cloud`                        |
| **Port**               | `21`                                                                        |
| **Přihlašovací jméno** | přihlašovací jméno vašeho účtu nebo účet FTP vytvořený v **FTP Management** |
| **Heslo**              | heslo k panelu nebo heslo účtu FTP                                          |

Šifrování TLS chrání vaše heslo i soubory během přenosu; ve FileZille zvolte **Vyžadovat explicitní FTP přes TLS**. Účet FTP vytvořený v **FTP Management** má tvar `name@your-domain.com` a lze ho omezit na jednu složku, například pro externího dodavatele.

### SSH a SFTP

Přístup SSH probíhá pomocí **klíče**, který uložíte v panelu:

1. Ještě nemáte klíč? Na svém počítači spusťte `ssh-keygen -t ed25519` a otevřete soubor končící na `.pub`: to je váš **veřejný** klíč.
2. V panelu otevřete **SSH Keys** a vložte svůj veřejný klíč.
3. Připojte se:

```
ssh USERNAME@web1.simafri.cloud
```

Stejný klíč otevírá **SFTP** (port `22`) ve FileZille nebo WinSCP. Ukládá se pouze veřejný klíč: váš soukromý klíč zůstává na vašem počítači.

## Volba verze PHP

Každá doména si volí svou verzi PHP v **PHP Version Selector**. K dispozici jsou dnes **PHP 8.4**, **8.3** (výchozí verze), **8.1** a **7.4**, s OPcache a běžnými rozšířeními: intl, mbstring, gd, curl, zip, xml, sodium, bcmath, soap, PDO pro MySQL a SQLite. Vaše aplikace vyžaduje jinou verzi? Napište podpoře: náš tým ji přidá.

## Vytvoření databáze

1. V panelu otevřete **MySQL Databases** a vytvořte databázi: její název a uživatel mají tvar `USERNAME_nazev`.
2. Poznamenejte si heslo uživatele.
3. Ve své aplikaci uveďte:

| Nastavení                   | Hodnota                                                   |
| --------------------------- | --------------------------------------------------------- |
| **Hostitel**                | `localhost`                                               |
| **Port**                    | `3306`                                                    |
| **Databáze** a **uživatel** | ty, které jste právě vytvořili, například `USERNAME_site` |

**phpMyAdmin**, otevřený ze stejné sekce, importuje soubor `.sql`, exportuje vaši databázi a prochází vaše tabulky.

## Composer, Node.js a frameworky

Přes SSH na vašem hostingu běží:

* **Composer 2**: `composer install`, `composer update`;
* **Node.js 24** a **npm**: `npm install`, `npm run build` pro sestavení front-endu nebo assetů;
* **Git**, **Python 3** a **Perl**.

U **Symfony** nebo **Laravelu** je kořenem webu domény složka `public/` projektu. Nahrajte projekt vedle `public_html` a poté nahraďte `public_html` odkazem na jeho složku `public/`:

```
cd ~/domains/your-domain.com

mv public_html public_html.original

ln -s my-project/public public_html
```

Příkazy frameworku (`php bin/console`, `php artisan`) se spouštějí ve složce projektu. U front-endu v **Angular**, **React** nebo **Vue** nahrajte výsledek `npm run build` do `public_html`, se souborem `.htaccess`, který směruje cesty na `index.html`.

Aplikace, která musí běžet nepřetržitě, například server Node.js nebo fronta zpráv, patří na [VPS Pro](https://docs.simafri.com/cz/vps-pro/).

## Naplánování úlohy

V **Cron Jobs** uveďte frekvenci a příkaz, například každý den ve 3:00:

```
0 3 * * * /usr/local/bin/php /home/USERNAME/domains/your-domain.com/my-project/bin/console app:cleanup
```

## HTTPS vašich domén

Každá doména a subdoména dostane svůj **certifikát HTTPS** Let's Encrypt, vyžádaný a obnovovaný automaticky, jakmile doména směřuje na váš server. **SSL/TLS Certificates** zobrazuje certifikát každé domény. Chcete-li návštěvníky vždy posílat na adresu `https://`, přidejte na začátek souboru `.htaccess` ve složce `public_html`:

```
RewriteEngine On

RewriteCond %{HTTPS} off

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

## Časté otázky

### Můj web stále zobrazuje výchozí stránku.

Vaše úvodní stránka musí být přímo v `public_html`, pod názvem `index.php` nebo `index.html`, a ne v podsložce. Pokud tam výchozí stránka stále je, smažte ji.

### Jak nainstaluji WordPress?

Napište podpoře a uveďte doménu: náš tým nainstaluje WordPress na váš hosting a předá vám přístup do jeho administrace.

### Moje připojení SSH je odmítnuto.

Ověřte, že váš **veřejný** klíč je uložen v **SSH Keys** a že se připojujete **Přihlašovacím jménem** svého účtu. Připojení SSH probíhá pomocí klíče: váš program musí použít soukromý klíč, který odpovídá uloženému klíči.
