# Δημοσίευση του ιστότοπού σας

## Πού πηγαίνουν τα αρχεία σας

Κάθε όνομα τομέα του λογαριασμού σας έχει τον φάκελό του, και ο ιστότοπός του σερβίρεται από τον φάκελο `public_html` που περιέχει:

```
/home/USERNAME/domains/otomeassas.gr/public_html
```

`USERNAME` είναι το όνομα χρήστη του λογαριασμού σας, που εμφανίζεται στον πελατειακό σας χώρο. Ένα αρχείο `index.php` ή `index.html` που τοποθετείτε στο `public_html` γίνεται η αρχική σελίδα του ιστότοπού σας.

## Ανέβασμα των αρχείων σας

Τρεις δρόμοι οδηγούν στον ίδιο φάκελο· επιλέξτε αυτόν που σας ταιριάζει.

### Η διαχείριση αρχείων

Στον πίνακα ελέγχου, **File Manager**: ανεβάστε τα αρχεία σας από το πρόγραμμα περιήγησης, ακόμη και ένα αρχείο `.zip`, που το αποσυμπιέζετε επί τόπου. Είναι ο πιο γρήγορος δρόμος για λίγα αρχεία.

### Το κρυπτογραφημένο FTP (FTPS)

Σε ένα πρόγραμμα FTP όπως το FileZilla:

| Ρύθμιση          | Τιμή                                                                                                 |
| ---------------- | ---------------------------------------------------------------------------------------------------- |
| **Πρωτόκολλο**   | FTP, με **ρητή κρυπτογράφηση TLS** (FTPS)                                                            |
| **Διακομιστής**  | το όνομα του διακομιστή σας, για παράδειγμα `web1.simafri.cloud`                                     |
| **Θύρα**         | `21`                                                                                                 |
| **Όνομα χρήστη** | το όνομα χρήστη του λογαριασμού σας, ή ένας λογαριασμός FTP που δημιουργήσατε στο **FTP Management** |
| **Κωδικός**      | εκείνος του πίνακα ελέγχου, ή εκείνος του λογαριασμού FTP                                            |

Η κρυπτογράφηση TLS προστατεύει τον κωδικό και τα αρχεία σας κατά τη μεταφορά· στο FileZilla, επιλέξτε **Require explicit FTP over TLS**. Ένας λογαριασμός FTP που δημιουργείται στο **FTP Management** έχει τη μορφή `onoma@otomeassas.gr` και μπορεί να περιοριστεί σε έναν φάκελο, για παράδειγμα για έναν εξωτερικό συνεργάτη.

### Το SSH και το SFTP

Η πρόσβαση SSH γίνεται με **κλειδί**, που το καταχωρίζετε στον πίνακα ελέγχου:

1. Δεν έχετε ακόμη κλειδί; Στον υπολογιστή σας, εκτελέστε `ssh-keygen -t ed25519` και ανοίξτε το αρχείο που τελειώνει σε `.pub`: αυτό είναι το **δημόσιο** κλειδί σας.
2. Στον πίνακα ελέγχου, ανοίξτε το **SSH Keys** και επικολλήστε το δημόσιο κλειδί σας.
3. Συνδεθείτε:

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

Το ίδιο κλειδί ανοίγει το **SFTP** (θύρα `22`) στο FileZilla ή στο WinSCP. Καταχωρίζεται μόνο το δημόσιο κλειδί: το ιδιωτικό σας κλειδί μένει στον υπολογιστή σας.

## Επιλογή της έκδοσης PHP

Κάθε όνομα τομέα επιλέγει την έκδοση PHP του στο **PHP Version Selector**. Σήμερα διατίθενται οι **PHP 8.4**, **8.3** (η προεπιλεγμένη έκδοση), **8.1** και **7.4**, με OPcache και τις συνηθισμένες επεκτάσεις: intl, mbstring, gd, curl, zip, xml, sodium, bcmath, soap, PDO για MySQL και SQLite. Η εφαρμογή σας ζητά άλλη έκδοση; Γράψτε στην υποστήριξη: η ομάδα μας την προσθέτει.

## Δημιουργία βάσης δεδομένων

1. Στον πίνακα ελέγχου, ανοίξτε το **MySQL Databases** και δημιουργήστε μια βάση: το όνομά της και ο χρήστης της έχουν τη μορφή `USERNAME_onoma`.
2. Σημειώστε τον κωδικό του χρήστη.
3. Στην εφαρμογή σας, δηλώστε:

| Ρύθμιση                  | Τιμή                                                            |
| ------------------------ | --------------------------------------------------------------- |
| **Διακομιστής**          | `localhost`                                                     |
| **Θύρα**                 | `3306`                                                          |
| **Βάση** και **χρήστης** | εκείνοι που μόλις δημιουργήσατε, για παράδειγμα `USERNAME_site` |

Το **phpMyAdmin**, που ανοίγει από την ίδια ενότητα, εισάγει ένα αρχείο `.sql`, εξάγει τη βάση σας και σας επιτρέπει να περιηγηθείτε στους πίνακές σας.

## Composer, Node.js και frameworks

Μέσω SSH, η φιλοξενία σας εκτελεί:

* **Composer 2**: `composer install`, `composer update`
* **Node.js 24** και **npm**: `npm install`, `npm run build` για να μεταγλωττίσετε το front-end ή τα assets σας
* **Git**, **Python 3** και **Perl**.

Για **Symfony** ή **Laravel**, ο ριζικός φάκελος web του ονόματος τομέα είναι ο φάκελος `public/` του έργου. Τοποθετήστε το έργο σας δίπλα στο `public_html` και αντικαταστήστε το `public_html` με έναν σύνδεσμο προς τον φάκελο `public/` του:

```
cd ~/domains/otomeassas.gr

mv public_html public_html.orig

ln -s to-ergo-mou/public public_html
```

Οι εντολές του framework (`php bin/console`, `php artisan`) εκτελούνται στον φάκελο του έργου. Για ένα front-end **Angular**, **React** ή **Vue**, τοποθετήστε το αποτέλεσμα του `npm run build` στο `public_html`, με ένα αρχείο `.htaccess` που ανακατευθύνει τις διαδρομές στο `index.html`.

Μια εφαρμογή που πρέπει να μένει συνεχώς σε λειτουργία, όπως ένας διακομιστής Node.js ή μια ουρά μηνυμάτων, έχει τη θέση της σε ένα [VPS Pro](https://docs.simafri.com/gr/vps-pro/).

## Προγραμματισμός εργασίας

Στο **Cron Jobs**, δηλώστε τη συχνότητα και την εντολή, για παράδειγμα κάθε μέρα στις 3:00:

```
0 3 * * * /usr/local/bin/php /home/USERNAME/domains/otomeassas.gr/to-ergo-mou/bin/console app:cleanup
```

## Το HTTPS των ονομάτων τομέα σας

Κάθε όνομα τομέα και υποτομέας λαμβάνει το **πιστοποιητικό HTTPS** του από το Let's Encrypt, που ζητείται και ανανεώνεται αυτόματα μόλις το όνομα τομέα δείχνει στον διακομιστή σας. Το **SSL/TLS Certificates** εμφανίζει το πιστοποιητικό κάθε ονόματος τομέα. Για να στέλνετε πάντα τους επισκέπτες σας στη διεύθυνση με `https://`, προσθέστε στην αρχή του αρχείου `.htaccess` του `public_html`:

```
RewriteEngine On

RewriteCond %{HTTPS} off

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

## Συχνές ερωτήσεις

### Ο ιστότοπός μου εμφανίζει ακόμη την προεπιλεγμένη σελίδα.

Η αρχική σας σελίδα πρέπει να βρίσκεται απευθείας στο `public_html`, με το όνομα `index.php` ή `index.html`, και όχι σε υποφάκελο. Διαγράψτε την προεπιλεγμένη σελίδα αν βρίσκεται ακόμη εκεί.

### Πώς εγκαθιστώ το WordPress;

Γράψτε στην υποστήριξη αναφέροντας το όνομα τομέα: η ομάδα μας εγκαθιστά το WordPress στη φιλοξενία σας και σας παραδίδει την πρόσβαση στη διαχείρισή του.

### Η σύνδεσή μου SSH απορρίπτεται.

Ελέγξτε ότι το **δημόσιο** κλειδί σας βρίσκεται στο **SSH Keys** και ότι συνδέεστε με το **Όνομα χρήστη** του λογαριασμού σας. Η σύνδεση SSH γίνεται με κλειδί: το πρόγραμμά σας πρέπει να χρησιμοποιεί το ιδιωτικό κλειδί που αντιστοιχεί σε εκείνο που καταχωρίσατε.
