8.6.5-1でOpenSSL Error

TOP Forums インストール(Installing KUSANAGI) 8.6.5-1でOpenSSL Error

8.6.5-1でOpenSSL Error

Tagged: ,

Viewing 15 reply threads
  • Author
    Posts
    • #874
      collne
      Participant

        いつもお世話になっています。

        今回、AWS の kusanagi を 8.6.5-1 にアップデートしたところ下記のエラーが出るようになりました。

        fgets(): SSL operation failed with code 1. OpenSSL Error messages: error:0A000126:SSL routines::unexpected eof while reading

        libssh などになにか問題がないでしょうか。
        ご確認いただけたらと思います。

      • #875
        Keita
        Participant

          collen さん、こんにちは。

          アップデート後に

          再起動 または kusanagi restart
          を試していただきましたでしょうか?

          kusanagi restrart

          KUSANAGIコマンド

          該当エラーはどこで表示されていますでしょうか?
          ・画面に表示されていますか?その場合はどの画面でしょうか?
          ・ログにも出力されていないでしょうか?Web サーバーのログも前後含めて記載いただけますでしょうか?

          以下のログとバージョンを記載いただけますでしょうか?
          ・yum update のログ
          ・OpenSSL のバージョン

        • #881
          collne
          Participant

            お返事が遅くなる申し訳ございません。

            kusanagi restart しております。
            インスタンスの再起動は致しておりません。

            下記のコードの fgets() でエラーが出ているようです。

            $fp = stream_socket_client( *******
            while( !feof( $fp ) ) {
            $response_data .= fgets( $fp, 4096 );
            }

            サーバーのエラーログはこんな感じです。
            2022/04/05 12:40:35 [error] 9793#0: *2062 FastCGI sent in stderr: “PHP message: PHP Warning: fgets(): SSL operation failed with code 1. OpenSSL Error messages:
            error:0A000126:SSL routines::unexpected eof while reading

            OpenSSLのバージョンは以下の通りです。
            [centos@kusanagi80 ~]$ openssl version
            OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)

            以下、yum.log です。
            Mar 28 03:28:53 Installed: kusanagi-wp-plugins-20220316-1.el7.noarch
            Mar 28 03:28:57 Updated: kusanagi-8.6.5-1.noarch
            Mar 28 03:32:14 Updated: 1:grub2-common-2.02-0.87.el7.centos.7.noarch
            Mar 28 03:32:14 Updated: epel-release-7-14.noarch
            Mar 28 03:32:14 Updated: 32:bind-license-9.11.4-26.P2.el7_9.9.noarch
            Mar 28 03:32:14 Updated: 1:grub2-pc-modules-2.02-0.87.el7.centos.7.noarch
            Mar 28 03:32:14 Updated: libX11-common-1.6.7-4.el7_9.noarch
            Mar 28 03:32:15 Updated: kbd-misc-1.15.5-16.el7_9.noarch
            Mar 28 03:32:15 Installed: xz-devel-5.2.2-1.el7.x86_64
            Mar 28 03:32:16 Updated: kernel-headers-3.10.0-1160.59.1.el7.x86_64
            Mar 28 03:32:16 Updated: kbd-legacy-1.15.5-16.el7_9.noarch
            Mar 28 03:32:16 Installed: libedit-devel-3.0-12.20121213cvs.el7.x86_64
            Mar 28 03:32:16 Updated: tzdata-2022a-1.el7.noarch
            Mar 28 03:32:17 Updated: bash-4.2.46-35.el7_9.x86_64
            Mar 28 03:32:17 Updated: nss-softokn-freebl-3.67.0-3.el7_9.x86_64
            Mar 28 03:32:21 Updated: glibc-common-2.17-325.el7_9.x86_64
            Mar 28 03:32:22 Updated: glibc-2.17-325.el7_9.x86_64
            Mar 28 03:32:22 Updated: nspr-4.32.0-1.el7_9.x86_64
            Mar 28 03:32:22 Updated: nss-util-3.67.0-1.el7_9.x86_64
            Mar 28 03:32:22 Updated: libxml2-2.9.1-6.el7_9.6.x86_64
            Mar 28 03:32:22 Updated: systemd-libs-219-78.el7_9.5.x86_64
            Mar 28 03:32:24 Updated: systemd-219-78.el7_9.5.x86_64
            Mar 28 03:32:24 Updated: libX11-1.6.7-4.el7_9.x86_64
            Mar 28 03:32:27 Updated: kusanagi-openssl-3.0.2-1.noarch
            Mar 28 03:32:27 Updated: gd-last-2.3.3-2.el7.remi.x86_64
            Mar 28 03:32:27 Updated: 1:grub2-tools-minimal-2.02-0.87.el7.centos.7.x86_64
            Mar 28 03:32:27 Updated: systemd-sysv-219-78.el7_9.5.x86_64
            Mar 28 03:32:28 Updated: nss-softokn-3.67.0-3.el7_9.x86_64
            Mar 28 03:32:28 Updated: nss-sysinit-3.67.0-4.el7_9.x86_64
            Mar 28 03:32:28 Updated: nss-3.67.0-4.el7_9.x86_64
            Mar 28 03:32:28 Updated: rpm-libs-4.11.3-48.el7_9.x86_64
            Mar 28 03:32:28 Updated: rpm-4.11.3-48.el7_9.x86_64
            Mar 28 03:32:28 Updated: 1:grub2-tools-2.02-0.87.el7.centos.7.x86_64
            Mar 28 03:32:29 Updated: ca-certificates-2021.2.50-72.el7_9.noarch
            Mar 28 03:32:29 Updated: 1:openssl-libs-1.0.2k-24.el7_9.x86_64
            Mar 28 03:32:30 Updated: krb5-libs-1.15.1-51.el7_9.x86_64
            Mar 28 03:32:30 Updated: cyrus-sasl-lib-2.1.26-24.el7_9.x86_64
            Mar 28 03:32:30 Updated: 32:bind-libs-lite-9.11.4-26.P2.el7_9.9.x86_64
            Mar 28 03:32:30 Updated: 32:bind-libs-9.11.4-26.P2.el7_9.9.x86_64
            Mar 28 03:32:30 Updated: 1:openssl-1.0.2k-24.el7_9.x86_64
            Mar 28 03:32:30 Updated: libkadm5-1.15.1-51.el7_9.x86_64
            Mar 28 03:32:30 Updated: krb5-devel-1.15.1-51.el7_9.x86_64
            Mar 28 03:32:31 Updated: 1:openssl-devel-1.0.2k-24.el7_9.x86_64
            Mar 28 03:32:31 Updated: 1:grub2-tools-extra-2.02-0.87.el7.centos.7.x86_64
            Mar 28 03:32:31 Updated: 1:grub2-pc-2.02-0.87.el7.centos.7.x86_64
            Mar 28 03:32:31 Updated: rpm-build-libs-4.11.3-48.el7_9.x86_64
            Mar 28 03:32:31 Updated: nss-tools-3.67.0-4.el7_9.x86_64
            Mar 28 03:32:32 Updated: openldap-2.4.44-25.el7_9.x86_64
            Mar 28 03:32:32 Updated: openssh-7.4p1-22.el7_9.x86_64
            Mar 28 03:32:32 Updated: cyrus-sasl-2.1.26-24.el7_9.x86_64
            Mar 28 03:32:32 Updated: cyrus-sasl-devel-2.1.26-24.el7_9.x86_64
            Mar 28 03:32:32 Updated: kusanagi-nghttp2-1.47.0-1.noarch
            Mar 28 03:32:34 Updated: kusanagi-httpd-2.4.53-1.noarch
            Mar 28 03:32:34 Updated: 1:mod_ssl-2.4.6-97.el7.centos.5.x86_64
            Mar 28 03:32:34 Updated: ImageMagick-6.9.10.68-6.el7_9.x86_64
            Mar 28 03:32:34 Updated: cronie-anacron-1.4.11-24.el7_9.x86_64
            Mar 28 03:32:34 Updated: cronie-1.4.11-24.el7_9.x86_64
            Mar 28 03:32:35 Installed: libxml2-devel-2.9.1-6.el7_9.6.x86_64
            Mar 28 03:32:35 Installed: libzstd-1.5.2-1.el7.x86_64
            Mar 28 03:32:35 Updated: libzip5-1.8.0-2.el7.remi.x86_64
            Mar 28 03:32:35 Updated: glibc-headers-2.17-325.el7_9.x86_64
            Mar 28 03:32:35 Updated: kernel-tools-libs-3.10.0-1160.59.1.el7.x86_64
            Mar 28 03:32:37 Installed: libicu69-69.1-2.el7.remi.x86_64
            Mar 28 03:32:40 Updated: kusanagi-php7-7.4.28-1.noarch
            Mar 28 03:32:40 Updated: php-pecl-zip-1.20.0-1.el7.remi.5.6.x86_64
            Mar 28 03:32:40 Updated: php-common-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:41 Updated: php-cli-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:41 Updated: php-pdo-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:41 Updated: php-xml-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:41 Updated: python2-distro-1.5.0-1.el7.noarch
            Mar 28 03:32:42 Updated: python2-certbot-1.11.0-2.el7.noarch
            Mar 28 03:32:44 Updated: certbot-1.11.0-2.el7.noarch
            Mar 28 03:32:44 Updated: php-xmlrpc-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:44 Updated: php-mysqlnd-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-devel-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-gd-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-process-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-mbstring-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-mcrypt-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:45 Updated: php-opcache-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:46 Updated: php-fpm-5.6.40-32.el7.remi.x86_64
            Mar 28 03:32:46 Updated: kusanagi-wp-cli-2.6.0-1.el7.noarch
            Mar 28 03:32:47 Updated: kernel-tools-3.10.0-1160.59.1.el7.x86_64
            Mar 28 03:32:47 Updated: glibc-devel-2.17-325.el7_9.x86_64
            Mar 28 03:32:48 Updated: openldap-devel-2.4.44-25.el7_9.x86_64
            Mar 28 03:32:48 Updated: openssh-clients-7.4p1-22.el7_9.x86_64
            Mar 28 03:32:48 Updated: openssh-server-7.4p1-22.el7_9.x86_64
            Mar 28 03:32:48 Updated: sudo-1.8.23-10.el7_9.2.x86_64
            Mar 28 03:32:48 Updated: rpm-python-4.11.3-48.el7_9.x86_64
            Mar 28 03:32:48 Updated: 1:grub2-2.02-0.87.el7.centos.7.x86_64
            Mar 28 03:32:48 Updated: 32:bind-utils-9.11.4-26.P2.el7_9.9.x86_64
            Mar 28 03:32:48 Updated: 32:bind-export-libs-9.11.4-26.P2.el7_9.9.x86_64
            Mar 28 03:32:49 Updated: 1:nfs-utils-1.3.0-0.68.el7.2.x86_64
            Mar 28 03:32:49 Updated: monit-5.30.0-1.el7.x86_64
            Mar 28 03:32:49 Updated: python-virtualenv-15.1.0-5.el7_9.noarch
            Mar 28 03:32:50 Updated: kusanagi-nginx-1.21.6-1.noarch
            Mar 28 03:32:51 Updated: kusanagi-ImageMagick-6.7.8.9-19.el7.x86_64
            Mar 28 03:32:52 Updated: cloud-init-19.4-7.el7.centos.6.x86_64
            Mar 28 03:32:52 Updated: polkit-0.112-26.el7_9.1.x86_64
            Mar 28 03:32:52 Updated: libgudev1-219-78.el7_9.5.x86_64
            Mar 28 03:32:52 Updated: libxml2-python-2.9.1-6.el7_9.6.x86_64
            Mar 28 03:32:52 Updated: kbd-1.15.5-16.el7_9.x86_64
            Mar 28 03:32:52 Updated: kpartx-0.4.9-135.el7_9.x86_64
            Mar 28 03:32:53 Updated: binutils-2.27-44.base.el7_9.1.x86_64
            Mar 28 03:32:53 Updated: unzip-6.0-24.el7_9.x86_64
            Mar 28 03:32:54 Updated: python-perf-3.10.0-1160.59.1.el7.x86_64
            Mar 28 03:32:54 Updated: python-pillow-2.0.0-23.gitd1c6db8.el7_9.x86_64
            Mar 28 03:32:55 Updated: virt-what-1.18-4.el7_9.1.x86_64
            Mar 28 03:33:05 Installed: kernel-3.10.0-1160.59.1.el7.x86_64
            Mar 28 03:33:06 Updated: groonga-release-2021.10.30-1.noarch
            Mar 28 03:33:06 Updated: remi-release-7.9-3.el7.remi.noarch
            Mar 28 03:33:06 Updated: python2-rsa-3.4.2-3.el7.noarch
            Mar 28 03:33:07 Updated: glibc-2.17-325.el7_9.i686
            Mar 28 03:33:07 Updated: nss-softokn-freebl-3.67.0-3.el7_9.i686
            Mar 28 03:33:07 Updated: systemd-libs-219-78.el7_9.5.i686

          • #883
            Keita
            Participant

              collen さん こんにちは。

              エラーログの内容など、ありがとうございます。

              kusanagi restart だけでは不十分な可能性もあるので、
              インスタンスの再起動も試していただけますでしょうか?

            • #889
              collne
              Participant

                こんにちは。

                インスタンスの停止、再起動を行ってみましたが状況は変わりませんでした。

              • #890
                collne
                Participant

                  OpenSSLのバージョンですが、先日

                  OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)

                  とお伝えしましたが、rpm -q openssl で見てみると

                  openssl-1.0.2k-24.el7_9.x86_64

                  となっていました。
                  これは正常でしょうか。

                • #891
                  Keita
                  Participant

                    こんにちは。

                    kusanagi-openssl と openssl の バージョンが異なるため、正常です。

                    
                    [root@kusanagi83 ~]# rpm -qa | grep openssl
                    openssl-1.0.2k-25.el7_9.x86_64
                    openssl-devel-1.0.2k-25.el7_9.x86_64
                    openssl-libs-1.0.2k-25.el7_9.x86_64
                    kusanagi-openssl-3.0.2-1.noarch
                    

                    前回示していただいた下記のコードは独自の PHP 実装でしょうか?

                    
                    $fp = stream_socket_client( *******
                    while( !feof( $fp ) ) {
                    $response_data .= fgets( $fp, 4096 );
                    }
                    
                  • #893
                    cloudy
                    Participant

                      collne さん、こんにちは。

                      頂いた情報だけでは再現性がないので、追加で情報いただけますと助かります。

                      1. kusanagi status の結果
                      トップページにも書いてあるとおり、情報が多ければ多いほど確認しやすいです。

                      2. プロトコルが不明です。
                      $fp = stream_socket_client( ******* で伏せ文字の情報ももう少し開示してください。

                      3. 再現できるソースコード
                      ソースはすべて提示できないと思いますので、公開できる範囲で再現性のあるソースをご提示ください。

                    • #924
                      collne
                      Participant

                        ありがとうございます。

                        一度、新規で立ち上げたインスタンスでどうなるのかを確認してみようと思います。

                      • #1002
                        collne
                        Participant

                          非常に時間が経ってしまって申し訳ございません。
                          あれからいろいろ情報を収集しまして、なんとなく状況が見えてきたので共有したいと思います。

                          まず下記のエラーが出る原因は、レスポンスサーバー(サービス元)が適切にclose_notifyを返していないために起こるものだという事がわかりました。
                          fgets(): SSL operation failed with code 1

                          サービス元に情報を共有しようと思ったのですが、弊社が取引している複数の会社で同様の症状が出たので、レスポンスサーバーの改善を求める前にこちらでなんとかできないかを調べてみました。

                          このエラーが起こる環境はOpenSSLが3.xの時に発生します。
                          kusanagiでは、PHP7.4.26あたりからOpenSSLが1から3に変わっているようです。
                          そこで、下記のようにダウングレードを試みましたが依存関係によりダウンできませんでした。
                          yum downgrade kusanagi-php7-7.4.25-1

                          close_notifyの問題に関しては、このエラーを無視するためのコンテキスト(SSL_OP_IGNORE_UNEXPECTED_EOF)が用意されるようですが、これが利用できるのはPHP8.1.7からとなっています。

                          PHPのドキュメントでは、「PHP >= 8.1 のみが、OpenSSL >= 3.0 をサポートしています。」とあります。
                          https://www.php.net/manual/ja/openssl.requirements.php

                          現状のkusanagi(PHP7.4、8.0)でOpenSSL1を使うことはできないものでしょうか。

                        • #1003
                          cloudy
                          Participant

                            collne さん、こんにちは。

                            前回私も書いたことですが、トップページにも記載の通り kusanagi status の結果はいただけませんか?
                            質問を見る限り必要だと判断して、改めて結果の提出をお願いしています。
                            結果が出せない理由がございましたら、その旨のご回答をいただきたいです。
                            また、他にも私が確認した内容に対して特に回答がないようです。
                            情報がなければ回答ができないケースもありますのでご了承ください。

                          • #1004
                            collne
                            Participant

                              失礼いたしました。以下、statusです

                              [root@kusanagi80 ~]# kusanagi status
                              Profile: test.collne.com
                              FQDN: test.collne.com
                              Type: WordPress
                              KUSANAGI Version 8.7.5-2
                              aws

                              *** (active) nginx ***
                              ● nginx.service – The NGINX HTTP and reverse proxy server
                              Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset : disabled)
                              Active: active (running) since 木 2022-08-11 17:02:05 JST; 17h ago

                              *** (active) php8-fpm ***
                              ● php8-fpm.service – The PHP FastCGI Process Manager
                              Loaded: loaded (/usr/lib/systemd/system/php8-fpm.service; enabled; vendor pre set: disabled)
                              Active: active (running) since 木 2022-08-11 17:02:05 JST; 17h ago

                              *** (active) MariaDB ***
                              ● mariadb.service – MariaDB 10.1.48 database server
                              Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor pres et: disabled)
                              Active: active (running) since 木 2022-08-11 17:07:19 JST; 17h ago

                              *** ruby ***
                              KUSANAGI Ruby is not installed yet

                              *** add-on ***

                              *** Cache Status ***
                              bcache off
                              fcache off

                              *** WAF ***
                              off

                              *** SELinux ***
                              off (permanent)

                              完了しました。

                            • #1005
                              cloudy
                              Participant

                                collne さん、こんにちは。

                                情報ありがとうございます。
                                KUSANAGI Version 8.7.5-2 ですね。

                                結論からお答えします。
                                かんたんにロールバックする方法はなく、ロールバックはセキュリティ上でもおすすめいたしません。
                                今回、KUSANAGI 8 で使用される PHP 7.4 系にエラーが出ないよう先行対応をしていただきました。

                                下記リリース文を参考に、バージョンアップ後にエラーが発生しないかご確認ください。
                                お願いになるのですが、バージョンアップ後に問題が発生しないことを確認したいので、実行前後のログをいただけると助かります。

                                KUSANAGIモジュール更新情報

                                今回の件はご承知の通り、OpenSSL 1系と3系の通信時に互換性に起因するものです。
                                1系があいまいな実装や設定を受け入れていたものを 3系で厳格にした差により発生するものになります。
                                公式の PHP 8.1.7 以降で特別に OpenSSL 1系の動作を実行できるように変更したため、エラーが発生しなくなっております。
                                ただし、PHP 7.4.x / 8.0.x にはこの改修が含まれていないため SSL 通信時にエラーが発生していました。

                                今回の本来の正しい解決方法は、サーバー側の OpenSSL を正しい設定に変更しエラーを無くすことです。
                                ただ現実問題として正しい解決方法を適用することが難しいところもあるかと思います。

                                以下、私が確認に使用した実行結果ログです。

                                `
                                [root@kusanagi83 ~]# kusanagi -V
                                KUSANAGI Version 8.7.5-2
                                Done.
                                [root@kusanagi83 ~]# rpm -q kusanagi-php7
                                kusanagi-php7-7.4.30-3.noarch
                                [root@kusanagi83 ~]# php7 -r “echo file_get_contents(‘https://chromedriver.storage.googleapis.com/LATEST_RELEASE’, false, stream_context_create()), PHP_EOL;”
                                104.0.5112.79
                                `

                                なお、バージョンアップ前やバージョンアップに失敗している場合はは下記のエラーが含まれた結果が返ります。

                                `
                                [root@kusanagi83 ~]# php7 -r “echo file_get_contents(‘https://chromedriver.storage.googleapis.com/LATEST_RELEASE’, false, stream_context_create()), PHP_EOL;”
                                PHP Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:
                                error:0A000126:SSL routines::unexpected eof while reading in Command line code on line 1
                                PHP Warning: file_get_contents(): SSL: Success in Command line code on line 1
                                104.0.5112.79
                                `

                              • #1006
                                cloudy
                                Participant

                                  collne さん、追記です。

                                  kusanagi status の実行結果を確認したところ、 MariaDB 10.1 系をご利用のようです。

                                  *** (active) MariaDB ***
                                  ● mariadb.service – MariaDB 10.1.48 database server
                                  Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor pres et: disabled)
                                  Active: active (running) since 木 2022-08-11 17:07:19 JST; 17h ago

                                  こちらパッケージから削除されているので、 yum update 時に失敗するかもしれません。
                                  失敗した場合、 yum update--disablerepo=mariadb を追加で指定することを試してみてください。

                                  詳しくは、下記のトピックを参考にしてください。

                                  MariaDBのアップデートができない(10.1→10.5)

                                • #1009
                                  collne
                                  Participant

                                    cloudy さん、ありがとうございました。
                                    アップデートでPHP7.4、PHP8.0いずれもエラーは出なくなりました。
                                    とても助かりました。今後とこもよろしくお願いいたします。

                                    以下、kusanagi status です。

                                    Type: WordPress
                                    KUSANAGI Version 8.7.5-2
                                    aws

                                    *** (active) nginx ***
                                    ● nginx.service – The NGINX HTTP and reverse proxy server
                                    Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
                                    Active: active (running) since 水 2022-08-17 23:05:11 JST; 4min 33s ago

                                    *** (active) php8-fpm ***
                                    ● php8-fpm.service – The PHP FastCGI Process Manager
                                    Loaded: loaded (/usr/lib/systemd/system/php8-fpm.service; enabled; vendor preset: disabled)
                                    Active: active (running) since 水 2022-08-17 23:09:10 JST; 34s ago

                                    *** (active) MariaDB ***
                                    ● mariadb.service – MariaDB 10.5.17 database server
                                    Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
                                    Active: active (running) since 水 2022-08-17 23:09:03 JST; 41s ago

                                    *** ruby ***
                                    KUSANAGI Ruby is not installed yet

                                    *** add-on ***

                                    *** Cache Status ***
                                    bcache off
                                    fcache off

                                    *** WAF ***
                                    off

                                    *** SELinux ***
                                    off (permanent)

                                    完了しました。

                                  • #1010
                                    cloudy
                                    Participant

                                      collne さん、こんにちは。

                                      いただきたかったログは、実際にエラーが発生していたコード部分のエラーログが、改修適用前後でどう変わったかだったのですが…
                                      客観的なエビデンスはいただけませんでしたので確認はできませんでしたが、解決したということで承知しました。

                                      私の場合、作業前と作業後のログを取得して、該当エラー部分に問題がなくなったことを客観的な事実として提示しつつ、結論として問題がなくなったと説明するようにしております。
                                      (厳密には該当以外の部分にも影響がない点も確認する必要もありますが、話の主旨がずれますので割愛します。)
                                      この提示方法のメリットは、検証方法や結論の導き方にに間違っている場合や不足がある場合、有識者に指摘いただけることがあるためです。
                                      また、解決策を提示してくれた方自身が、客観的な事実から想定していた動作を確認することもできるためです。

                                  Viewing 15 reply threads
                                  • You must be logged in to reply to this topic.

                                  Next article

                                  フォーラムについて