Windows Server에서 pgadmin 4를 호스팅하는 방법
그래서 나는 이 팽창 소프트웨어를 내 컴퓨터가 아니라 네트워크 서버에 두어야 한다고 결정했다.일단 메뉴가 생기면 (물론 윈도에서의 경험도 있지만) 어렵지 않다.
성분
구성요소는 다음과 같습니다.
HttpPlatformHandler은 IIS 모듈로 서버의 모든 프로세스를 관리할 수 있습니다. (이 예에서 우리는 Python을 사용할 것입니다.) 그리고 역방향 에이전트를 충당할 수 있습니다.
pgAdmin 4 :
%ProgramFiles%
은 보통 프로그램이 있는 위치입니다.요리책
애플리케이션 풀 생성
모범 사례로 a new Application Pool in IIS이 필요합니다. 이를 통해 애플리케이션을 전용 작업 프로세스에서 분리할 수 있습니다.나는 나의 수영장을 PgAdmin이라고 명명했다.
웹 사이트 만들기
그리고 우리는 새로운 사이트가 필요하다.
C:\inetpub
에서 pgadmin
이라는 새 폴더를 만듭니다.방화벽을 열다
애플리케이션이 opening the Windows Firewall if necessary을 통해 액세스할 수 있는지 확인합니다(예: TCP 포트 3000).
웹 사이트 구성
새로 만든
web.config
폴더의 pgadmin
파일에 다음과 같은 구성을 추가하여(Configure Python web apps for IIS 참조) 웹 사이트를 구성합니다(메모장 사용 가능).<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="PythonHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
</handlers>
<httpPlatform
processPath="%ProgramFiles%\pgAdmin 4\v4\runtime\python.exe"
arguments=""%ProgramFiles%\pgAdmin 4\v4\web\pgAdmin4.py""
stdoutLogEnabled="true"
stdoutLogFile="C:\inetpub\logs\pgadmin\pgAdmin4.log"
startupTimeLimit="60"
processesPerApplication="1">
<environmentVariables>
<environmentVariable name="PGADMIN_INT_PORT" value="%HTTP_PLATFORM_PORT%" />
<environmentVariable name="PYTHONHOME" value="%ProgramFiles%\pgAdmin 4\v4\venv" />
<environmentVariable name="SERVER_MODE" value="True" />
</environmentVariables>
</httpPlatform>
<modules>
<remove name="WebDAVModule" />
</modules>
</system.webServer>
</configuration>
이것은 매우 간단하지만 주의해야 할 것은 다음과 같다.C:\inetpub\logs\pgadmin
이라는 폴더에서 로그를 출력하고 이 폴더는 미리 만들어야 합니다.HttpPlatformHandler는 Python을 사용하여 프로세스를 자동으로 만들고
HTTP_PLATFORM_PORT
환경 변수를 사용하여 전용 포트를 할당합니다.권리를 주다
이제
IIS APPPOOL\PgAdmin
이라는 애플리케이션 풀 사용자에게 적절한 권한을 부여하면 됩니다.폴더
%ProgramFiles%\pgAdmin 4
을 읽고 실행합니다.폴더
C:\inetpub\pgadmin
을 읽고 실행합니다.pgAdmin
이라는 하위 폴더를 만들고 사용자에게 완전한 제어권을 부여합니다.이것은 응용 프로그램이 데이터를 저장하는 곳이다.로그 폴더를 완전히 제어합니다. (제 예시에서
C:\inetpub\logs\pgadmin
)웹 사이트 시작
이제 너는 사이트를 시작할 수 있다.즐겨라!
기본적으로 프로그램은 29시간마다 자동으로 순환합니다. 이것은 프로세스를 다시 시작할 때 다음 요청이 더 오래 걸린다는 것을 의미합니다.그 자체가 나쁜 것은 아니지만 분명히 this behaviour can be changed이다.
로그 폴더는 항상 정리해야 합니다.
업데이트 2021-05-29: 사이트 구성이 pgadmin 버전 5에 맞게 조정되었습니다.4! 버전 4 구성은 다음과 같습니다.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="PythonHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
</handlers>
<httpPlatform
processPath="%ProgramFiles%\pgAdmin 4\v4\runtime\python.exe"
arguments=""%ProgramFiles%\pgAdmin 4\v4\web\pgAdmin4.py""
stdoutLogEnabled="true"
stdoutLogFile="C:\inetpub\logs\pgadmin\pgAdmin4.log"
startupTimeLimit="60"
processesPerApplication="1">
<environmentVariables>
<environmentVariable name="PGADMIN_INT_PORT" value="%HTTP_PLATFORM_PORT%" />
<environmentVariable name="PYTHONHOME" value="%ProgramFiles%\pgAdmin 4\v4\venv" />
<environmentVariable name="SERVER_MODE" value="True" />
</environmentVariables>
</httpPlatform>
<modules>
<remove name="WebDAVModule" />
</modules>
</system.webServer>
</configuration>
Reference
이 문제에 관하여(Windows Server에서 pgadmin 4를 호스팅하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mcartoixa/how-to-host-pgadmin-4-on-windows-server-1e9b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)