다음 명령을 사용하여 OpenSUSE Leap 42.3(WSL에서 실행)에 저장소를 추가하려고 합니다.
sudo zypper addrepo https://download.opensuse.org/repositories/devel:languages:php/openSUSE_Leap_42.3/devel:languages:php.repo
다음 오류가 발생합니다.
다운로드(컬) 오류'https://download.opensuse.org/repositories/devel:언어:php/openSUSE_Leap_42.3/devel:언어:php.repo': 오류 코드: 잘못된 URL 오류 메시지: 프로토콜 http가 libcurl에서 지원되지 않거나 비활성화되었습니다.
https를 프로토콜로 사용할 때 http에 대한 오류 메시지가 혼란스럽고 curl --version
https를 제안하는 출력이 지원되는 프로토콜이라는 사실이 더욱 혼란스럽다는 사실을 발견했습니다.
컬 7.37.0 (x86_64-suse-linux-gnu) libcurl/7.37.0 OpenSSL/1.0.2j zlib/1.2.8 libidn/1.28 libssh2/1.4.3
프로토콜: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
기능: 비동기 DNS GSS 협상 IDN IPv6 대용량 파일 NTLM NTLM_WB SSL libz TLS-SRP
을 사용하면 zypper info libssl43
다음과 같은 결과를 얻습니다.
Information for package libssl43:
---------------------------------
Repository : oss
Name : libssl43
Version : 2.5.3-6.1
Arch : x86_64
Vendor : openSUSE
Installed Size : 360.0 KiB
Installed : Yes
Status : up-to-date
Source package : libressl-2.5.3-6.1.src
Summary : An SSL/TLS protocol implementation
Description :
LibreSSL is an open-source implementation of the Secure Sockets Layer
(SSL) and Transport Layer Security (TLS) protocols. It derives from
OpenSSL and intends to provide a more secure implementation.
출력은 zypper info libcrypto41
다음과 같습니다. (libcrypto41은 libssl43의 종속성입니다.)
Information for package libcrypto41:
------------------------------------
Repository : oss
Name : libcrypto41
Version : 2.5.3-6.1
Arch : x86_64
Vendor : openSUSE
Installed Size : 2.0 MiB
Installed : Yes (automatically)
Status : up-to-date
Source package : libressl-2.5.3-6.1.src
Summary : An SSL/TLS protocol implementation
Description :
The "crypto" library implements a wide range of cryptographic
algorithms used in various Internet standards. The services provided
by this library are used by the LibreSSL implementations of SSL, TLS
and S/MIME, and they have also been used to implement SSH, OpenPGP,
and other cryptographic standards.
https URL을 사용하는 방법은 무엇입니까? 대신 http를 사용할 수 있지만 그 경로로 가고 싶지 않습니다.
답변1
내가 찾은주제: zypper https url: 'http' 프로토콜은 libcurl에서 지원되지 않거나 비활성화됩니다., 링크가 포함되어 있습니다.주제: /home/~/.cache/kioexec/krun/####_#의 캐시 파일? 그것을 피하는 방법?
이 게시물의 내용에 따라 시도해 보았는데 curl https://download.opensuse.org/repositories/devel:languages:php/openSUSE_Leap_42.3/devel:languages:php.repo
다음과 같이 출력됩니다.
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://download.opensuse.org/repositories/devel:languages:/php/openSUSE_Leap_42.3/devel:languages:php.repo">here</a>.</p>
<hr>
<address>Apache/2.2.34 (Linux/SUSE) Server at download.opensuse.org Port 443</address>
</body></html>
따라서 은( https://download.opensuse.org/repositories/devel:languages:php/openSUSE_Leap_42.3/devel:languages:php.repo
는) 으로 리디렉션되며 http://download.opensuse.org/repositories/devel:languages:/php/openSUSE_Leap_42.3/devel:languages:php.repo
, 리디렉션이 https://에서 http://로 이루어지므로 Zypper는 따르지 않습니다.
즉, 서버는 아직 https:// URL로 작동하지 않으며 임시 해결 방법은 http:// URL을 사용하는 것입니다. 아무 문제 없이 OpenSuse 42.3을 설치했습니다.
답변2
해결 방법으로 다음 파일 /etc/zypp/repos.d/php.repo
과 해당 내용을 루트로 수동으로 추가할 수 있습니다.
[devel_languages_php]
name=devel:languages:php (openSUSE_Leap_42.3)
type=rpm-md
baseurl=http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_42.3/
gpgcheck=1
gpgkey=http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_42.3/repodata/repomd.xml.key
enabled=1
위 URL의 내용은 다음과 같습니다.http://download.opensuse.org/repositories/devel:/언어:/php/openSUSE_Leap_42.3/devel:언어:php.repo