お知らせ

現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
投稿日:
ソフトウェア::VSCode言語::PHP::Xdebug

余計な例外を投げてくるのが面倒なのでそれを無視できるように

確認環境

Env Ver
PHP 7.1.3
Xdebug 2.9.4
VSCode 1.48.0

内容

"ignore"セクションを追加してそこに書いたファイルから出た例外は無視される

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9001,
            "ignore": [
                "**/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
            ]
        }
    ]
}

VSCodeのRemote - SSH拡張でSSH接続する時に毎回秘密鍵のパスフレーズを求められるのが面倒すぎるので、パスフレーズを記憶させて入力を省略させる方法を調べた

前提

  • Windows 10 or 11
  • Remote - SSH拡張を利用した公開鍵認証接続(パスフレーズあり)ができている
  • MSYS2を入れている

手順1

  1. PowerShellを管理者権限で起動させて次のコマンドを流す
    Set-Service ssh-agent -StartupType Automatic
    Start-Service ssh-agent
    Get-Service ssh-agent
    
  2. 秘密鍵をssh-agentに食べさせる
    ssh-add C:\Users\hoge\.ssh\id_rsa
    
  3. パスフレーズを求められるので入力
  4. 追加した秘密鍵が登録されていることを確認
     ssh-add -l
    
  5. VSCodeからRemote - SSHを使って接続する
  6. パスフレーズ無しで入れればOK、パスフレーズを求められたら以下の手順2へ

手順2

以下の警告が流れてうまく行かないケース、この場合はWindows付属のOpenSSHが腐っているので入れ替える

warning: agent returned different signature type ssh-rsa (expected rsa-sha2-512)
  1. PowerShellを管理者権限で起動させて次のコマンドを流して標準のOpenSSHをアンインストールする
    Get-Service -Name ssh-agent | Stop-Service
    sc.exe delete ssh-agent
    Remove-WindowsCapability -Online -Name "OpenSSH.Client~~~~0.0.1.0"
    Remove-WindowsCapability -Online -Name "OpenSSH.Server~~~~0.0.1.0"
    
  2. Chocolateyを入れる
    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
    
  3. OpenSSHをインストールする
    choco install openssh --package-parameters="/SSHAgentFeature"
    
  4. サービスからssh-agentが実行中で自動起動するようになっていることを確認
  5. 秘密鍵をssh-agentに食べさせる
    ssh-add C:\Users\hoge\.ssh\id_rsa
    
  6. 追加した秘密鍵が登録されていることを確認
     ssh-add -l
    
  7. VSCodeからRemote - SSHを使って接続する
  8. パスフレーズ無しで入れればOK