Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membetulkan \'x509: sijil sah untuk ...\' Ralat Menyambung ke Cloud SQL dengan SSL dan Golang?
Menyambung ke Google Cloud SQL dengan SSL dan Golang daripada Google App Engine
Menyambung ke Google Cloud SQL menggunakan Golang dan go-sql- pemandu boleh menghadapi ralat semasa menggunakan SSL. Satu ralat khusus yang mungkin timbul ialah:
x509: certificate is valid for projectName:instanceName, not projectName
Untuk menyelesaikan isu ini, adalah penting untuk menetapkan sifat ServerName apabila mendaftar TLSConfig tersuai dengan pemacu MySQL, selain daripada menentukan project-id:instance -name within sql.Open().
Berikut ialah contoh yang menunjukkan pembetulan ini:
<code class="go">import "database/sql" import _ "github.com/go-sql-driver/mysql" // Create a custom TLS configuration. tlsConfig := &tls.Config{ RootCAs: rootCertPool, Certificates: clientCert, ServerName: "projectName:instanceName", } // Register the TLS configuration with the MySQL driver. mysql.RegisterTLSConfig("custom", tlsConfig) // Establish the database connection with SSL enabled. db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
Dengan menambahkan ?tls=nameOfYourCustomTLSConfig pada rentetan sambungan, anda boleh menentukan konfigurasi TLS tersuai untuk digunakan. Ini memastikan bahawa sambungan diwujudkan dengan betul dengan SSL.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan \'x509: sijil sah untuk ...\' Ralat Menyambung ke Cloud SQL dengan SSL dan Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!