PostgreSQL은 웹 애플리케이션에서 사용할 수 있습니다.

PostgreSQL은 웹 애플리케이션에서 사용할 수 있습니다.

PostgreSQL이 설치된 서버가 있고 데이터베이스의 데이터를 지속적으로 수정하는 일부 스크립트가 있습니다. PostgreSQL은 기본 포트 5432에서 실행됩니다.

나는 godaddy를 통해 구매한 표준 호스팅인 내 웹사이트에서 데이터베이스에 연결할 수 있기를 원합니다.

네트워크를 통해 데이터베이스에 접근할 수 없기 때문에 데이터베이스에 접근할 수 없다는 것을 알고 있습니다. 하지만 내 웹 사이트가 데이터베이스와 통신할 수 있도록 데이터베이스를 온라인으로 사용할 수 있도록 하는 것이 가능합니까?

답변1

GoDaddy 서버에 대한 외부 연결을 허용해야 합니다. 호스팅된 웹사이트의 경우 항상 그런 것은 아닙니다. 다른 사람이 포트 80 또는 443에서만 연결하도록 허용하고 웹사이트를 호스팅하는 이메일이나 데이터베이스 서버에 연결을 보낼 가능성이 있기 때문에 다른 모든 연결은 방화벽에 의해 차단될 수 있습니다.

그런 다음 서버를 허용해야합니다수용하다연결하다. 한 가지 해결 방법은 GoDaddy 서버와 PostgreSQL 서버 간에 VPN을 허용하는 것입니다. 그렇지 않으면 PostgreSQL 서버의 방화벽이 GoDaddy(또는 모든 사람)에게 열려 있어야 합니다. 이로 인해 보안 위험이 발생합니다.

SSH를 사용하면 psql 시스템에서 Apache 시스템으로의 포트 전달(ssh 터널링이라고도 함)을 사용할 수 있습니다. 양쪽에서 연결을 열 수 있습니다(단, 구문은 약간 다릅니다). 예를 들어

ssh useronpostgres@postgresmachine [other options] -L 5432:localhost:5432

웹 머신에서 실행하면 웹 머신에 로컬 PostgreSQL 포트가 생성되므로 웹 사이트는 실제로 PostgreSQL 머신에서 실행 중인 로컬 PostgreSQL을 "볼" 수 있습니다.

마지막으로, 귀하의 웹사이트는 PostgreSQL과 "대화"할 수 있어야 합니다.단순한 연결만으로는 충분하지 않습니다.즉, 사용 가능한 포트가 있어야 하지만 충분하지는 않습니다.그 자체. 사이트가 Perl 또는 PHP로 개발된 경우 현재 pgsql/psql 드라이버가 포함된 PDO 모듈이 있습니다.아니요설치 후에는 일반적으로 PostgreSQL이 아닌 MySQL이 선택됩니다. 그렇다면 구성 변경을 요청해야 합니다.

REST API를 통해 MySQL 또는 PostgreSQL에 대한 REST 액세스를 허용하는 데이터베이스용 "씬 커넥터"도 있습니다(예:데이터베이스를 체포하다또는 다른 사람들도 볼 수 있습니다.이 문제) 아직 PostgreSQL 서버에 웹 서버가 없다면 설치해 볼 수 있습니다. 이렇게 하면 포트 80을 통해 웹 사이트에 액세스할 수 있으며 구문과 기능에 일부 제한이 있지만 GoDaddy 측의 특수 드라이버는 필요하지 않습니다. 이것이 결국 수용 가능한 타협인지 평가해야 합니다.

PostgreSQL에 대한 광범위한 액세스를 제공하기 위해 설치할 수도 있습니다.phpPgadmin.

관련 정보