2.5.2.3.2. Налаштування підключення по FTP і SFTP у VS Code

Розширення «Remote - SSH» не підтримується

Офіційне розширення Remote - SSH потребує встановлення та налаштування на сервері додаткового ПЗ. Через технічні особливості роботи хостингу така синхронізація не підтримується.

Організувати синхронізацію можна за допомогою спеціалізованих розширень, наприклад SFTP від Natizyskunk. Детальний опис розширення та його можливостей доступний на GitHub.

  1. Встановіть розширення «SFTP» від Natizyskunk кнопкою «Install» на сторінці маркетплейса або через розділ розширень у VS Code:
  2. Відкрийте конфігураційний файл розширення — в палітрі команд виберіть «SFTP: Config» (палітра відкривається поєднанням Ctrl+Shift+P у Windows/Linux або Cmd+Shift+P на macOS).
  3. Вкажіть налаштування підключення та збережіть зміни:
    {
        "name": "example",
        "host": "example.ftp.tools",
        "protocol": "ftp",
        "port": 21,
        "username": "example_ftp",
        "password": "password",
        "remotePath": "/",
        "uploadOnSave": true,
        "ignore": [
            ".vscode"
        ]
    }

    Параметри:

    • name — довільна назва підключення.
    • hostхост FTP.
    • usernameлогін FTP.
    • passwordпароль FTP.
    • remotePathвідносний шлях від каталогу доступу FTP до потрібного каталогу. Приклади:
    • uploadOnSave — автоматична синхронізація при збереженні змін.
    • ignore — список файлів і каталогів, які будуть ігноруватися при завантаженні проекту на сервер.
    {
        "name": "example",
        "host": "example.ftp.tools",
        "protocol": "sftp",
        "port": 22,
        "username": "example",
        "password": "password",
        "remotePath": "/home/example/",
        "uploadOnSave": true
    }

    Параметри:

    • name — довільна назва підключення.
    • hostхост SSH.
    • usernameлогін SSH.
    • passwordпароль SSH.
    • remotePathабсолютний шлях від кореня файлової системи сервера до потрібного каталогу, де example — це назва хостинг-акаунта. Приклади:
      • /home/example — доступ у кореневий каталог хостинг-акаунта.
      • /home/example/path/to/dir — доступ у підкаталог path/to/dir всередині хостинг-акаунта.
    • uploadOnSave — автоматична синхронізація при збереженні змін.
    Детальніше про ключі див. SSH-ключі і SSH-аутентифікація за ключами.
    {
        "name": "example",
        "host": "example.ftp.tools",
        "protocol": "sftp",
        "port": 22,
        "username": "example",
        "privateKeyPath": "/path/to/id_rsa"
        "passphrase": true,
        "remotePath": "/home/example/",
        "uploadOnSave": true
    }

    Параметри:

    • name — довільна назва підключення.
    • hostхост SSH.
    • usernameлогін SSH.
    • privateKeyPath — шлях до файлу приватного ключа на вашому пристрої.
    • passphrase — використовується, коли приватний ключ зашифрований парольною фразою:
      • true — парольну фразу треба буде вводити при кожному підключенні.
      • Щоб не вводити парольну фразу при кожному підключенні, замість true можна вказати саму парольну фразу в подвійних лапках.
      • Якщо приватний ключ не зашифрований парольною фразою, можна або залишити true і при запиті парольної фрази просто натискати Enter, або видалити цей рядок з конфігурації.
    • remotePathабсолютний шлях від кореня файлової системи сервера до потрібного каталогу, де example — це назва хостинг-акаунта. Приклади:
      • /home/example — доступ у кореневий каталог хостинг-акаунта.
      • /home/example/path/to/dir — доступ у підкаталог path/to/dir всередині хостинг-акаунта.
    • uploadOnSave — автоматична синхронізація при збереженні змін.
  4. Підключіться до сервера і завантажте вміст каталогу з remotePath на локальний пристрій — у паліті команд виберіть «SFTP: Download Project» і створене підключення.
  5. Дочекайтеся завершення завантаження — статус виводиться в лівому нижньому кутку VS Code.

Далі після збереження будь-яких змін у локальній копії проєкту вони автоматично синхронізуватимуться із сервером. Також через контекстне меню в списку файлів можна вручну запускати синхронізацію в потрібний бік.

Зміст

    (5)

    Коментарі

    NAM
    Чому в статі нічого не вказано про директиви privateKeyPath & passhprase
    karlov
    Оновили статтю та додали інформацію про підключення за допомогою SSH-ключа.