설치하고 실행하려고 하는데경향DigitalOcean 서버에서. Tendenci는 오픈 소스 연관 관리 소프트웨어입니다.http://tendenci.com/
나는 여기의 지침을 정확히 따랐습니다.http://tendenci.readthedocs.org/en/latest/installation/remote.html
107.170.117.57 사이트에 접속할 때마다 내부 서버 오류가 발생하면서 막히는 일이 있었습니다.
문제는 내 /var/www
권한이 잘못 설정되었거나 nginx가 포트 80 요청을 수신하지 않는다는 것입니다. (아니면 둘다?).
서버는 Ubuntu 12.04.4 x64를 실행 중이며 로그인할 때 폴더를 만들어야 합니다 /var/www
. 나중에 이것이 내부 서버 오류의 원인이 아닐까 생각하여 다음을 통해 권한을 설정했습니다.
chown root:www-data www
chmod 755 www
/var/www/tendenci
처음의 가이드에 따라 (Tendenci가 설치된 곳)에도 동일한 권한을 적용했습니다.
아무것도 바뀌지 않았으므로 추가했습니다.
listen [::]:80 ipv6only=on default_server;
/etc/nginx/sites-available/tendenci
내가 여기서 읽은 내용을 바탕으로 :https://stackoverflow.com/questions/14972792/nginx-nginx-emerg-bind-to-80-failed-98-address-already-in-use
이것은 도움이 되지 않습니다. 저는 시스템 관리자가 아니기 때문에 혼란스럽습니다. 제가 기본적인 것을 놓치고 있는 걸까요? 권한 문제입니까 /var/www
아니면 구성 문제입니까 /etc/nginx/sites-available/tendenci
?
참고: 지침을 따른 것은 이번이 세 번째입니다. 두 번째로 LAMP 설정을 사용하려고 시도했을 때 107.170.117.57/tendenci 사이트를 방문했을 때 사이트 자체의 실제 프런트엔드 대신 디렉터리와 파일이 표시되었습니다. 또한 참고: 107.170.117.57에 직접 액세스하면 이 사이트가 표시됩니다.
올바른 방향으로의 도움이나 조언은 크게 감사하겠습니다. 감사합니다!
답변1
이제 몇 가지 사항을 배제할 차례입니다. 문제가 NGINX, Python 또는 다른 서버 구성 문제에 있는지 살펴보겠습니다.
/var/www/foo
간단한 텍스트 파일을 디렉토리의 유일한 파일로 사용하여 새 서버 루트 디렉토리를 만듭니다.mkdir /var/www/foo chown www-data:www-data /var/www/foo touch /var/www/foo/index.html chown www-data:www-data /var/www/foo/index.html echo "<html>Hi there</html>" > /var/www/foo/index.html
이제 이전에 제공했던 디렉토리 대신 새 디렉토리를 제공하도록 nginx 서버 구성을 변경하십시오
var/www/tendenci
. 이에 대한 도움이 필요하면 설명서를 따른다고 가정합니다.이상이 단계를 안내해 드립니다.nginx 다시 시작또는 와
/etc/init.d/nginx restart
유사한 것 . 공인 IP 주소를 확인하여 서버 오류나 단순 HTML 파일이 있는지 확인하세요. 다른 문제를 해결하기 전에 서버가 이 간단한 텍스트 파일을 제공하도록 노력하겠습니다.
서버에서 간단한 텍스트 파일을 제공할 수 없는 경우 웹 서버를 다시 설치하고 서버 설치에 문제가 없는지 확인해야 할 수 있습니다. 길잃은 ";"은 구성 파일에서 찾기 어려운 경우가 있습니다.
제공할 간단한 텍스트 파일을 얻을 수 있다면 Python 설치를 살펴 which python
보거나파이썬 파일서버 루트 디렉터리에 있습니다. 서버 루트의 Python 파일에 문제가 있고 어떤 이유로 인해 유효하지 않은 경우 서버 오류가 발생합니다. 이 경우 Python 오류 로그를 확인하는 것이 좋습니다. 그럴지도 /var/log/nginx/python.err
모르지만, 그들이 어디에 살지는 잘 모르겠습니다.
이것이 당신을 올바른 길로 이끌기를 바랍니다.
답변2
어떤 크기의 Droplet을 사용하고 있는지는 모르겠지만 작은 Droplet을 실행하는 경우 실제로는 논리나 구문 문제가 아닌 오류가 발생할 수 있습니다. 스왑을 추가하고 다시 설치하면 도움이 될 수 있습니다.
python deploy.py
설치 설명서 섹션의 데이터베이스 마이그레이션 섹션에서 오류가 발생했습니다. 배포 시 명령을 실행하면 데이터베이스 마이그레이션 시 일관된 오류 대신 다른 오류가 발생합니다. 드롭릿에 스왑 파일을 추가하면 이 문제가 해결된 것 같습니다. 배포를 성공적으로 실행할 수 있습니다.
나는 팔로우한다이 기사의 스왑 파일 섹션.
빠른 수정은 다음 명령을 실행하는 것입니다.
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k sudo mkswap /swapfile sudo swapon /swapfile
이제 스왑 파일이 실행되고 활성화되었습니다. 하지만 부팅할 때마다 활성화되도록 설정하려면 /etc/fstab을 편집해야 합니다.
sudo nano /etc/fstab
파일 맨 아래에 다음을 붙여넣습니다.
/swapfile none swap sw 0 0
이제 VPS를 다시 시작하십시오.
sudo restart
여기에 전체 설명이 있습니다: https://www.digitalocean.com/community/articles/how-to-add-swap-on-ubuntu-12-04
답변3
(알 수 없는 이유로) 데이터베이스의 열이 누락된 것으로 나타났습니다. 수동으로 추가한 후에도 문제가 지속되어 개발자가 대신 다음 설치 스크립트를 사용하도록 제안했습니다.https://github.com/tendenci/deploy_tendenci
사소한 문제도 있었지만 해결하고 나니 모든 일이 순조롭게 진행되었습니다!
나중에 Tendenci를 설치하고 싶은 분들은 다음 방법을 추천드립니다:https://github.com/tendenci/deploy_tendenci그리고 확인https://github.com/tendenci/tendenci/issues/351일반적인 문제 해결 팁을 알아보세요.