我正在尝试安装并开始运行趋势在 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 文件。在我花时间排除其他任何问题之前,我会努力让服务器提供这个简单的文本文件。
如果您无法让服务器提供简单的文本文件,那么您可能需要重新安装 Web 服务器并确保服务器安装中没有出现问题。一个流浪的“;”有时在配置文件中很难找到。
如果您可以获得简单的文本文件来提供服务,那么我会研究 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了解常见的故障排除技巧。