我找不到 Ruby 网络应用程序的代码

I can't find the code of a Ruby web application

我对网络开发非常陌生,但对整个编程来说并不陌生。我对这个应用程序感到非常困惑,我被拉去修复它,因为通常做它的人不能再做了。

这可能是个愚蠢的问题,但我找不到代码或任何包含实际网页的 HTML。在主文件夹 ~/myapp 中,包含:

- README.txt
- build
- env
    - bin
    - include
    - lib
    - local
    - man
    - passenger_wsgi.py
    - passenger_wsgi.pyc
    - pip-selfcheck.json
    - public
        - favicon.gif
        - favicon.ico
    - quickstart.html
    - sd.html
    - tmp
- error.log
- favicon.gif
- favicon.ico
- get-pip.py
- phpinfo.php
- pylibs
- quickstart.html
- sd.log
- myapp_flask

观察:

问题:

补充说明:

当我使用 touch tmp/restart.txt/

重新启动 Web 应用程序时出现此错误
Web application could not be started
An error occurred while starting the web application. It exited before signalling successful startup back to Phusion Passenger. Please read this article for more information about this problem.
Raw process output:
Traceback (most recent call last):
  File "/usr/share/passenger/helper-scripts/wsgi-loader.py", line 26, in <module>
    import sys, os, re, imp, threading, signal, traceback, socket, select, struct, logging, errno
  File "/usr/lib/python2.7/logging/__init__.py", line 26, in <module>
    import sys, os, time, cStringIO, traceback, warnings, weakref, collections
  File "/usr/lib/python2.7/weakref.py", line 14, in <module>
    from _weakref import (
ImportError: cannot import name _remove_dead_weakref

两者 quickstart.html 内容相同:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title>DreamHost</title>
        <link media="all" rel="stylesheet" type="text/css" href="http://dreamhost.com/wp-content/themes/dreamhost/style.css" />
</head>
<body id="domains">
        <div class="w1">
                <div class="w2">
                        <div id="wrapper">
                                <div id="header">
                                        <strong class="comingsoon-logo"><a href="http://www.dreamhost.com/">DreamHost Imagine the Web, Your Way</a></strong>
                                </div>
                                <div class="main" style="padding-bottom: 24px">
                                        <h1>sendsomething.net Coming Soon!</h1>
                                        <div class="holder">
                                                <div class="content">
                                                        <p>The DreamHost customer who owns sendsomething.net has not yet uploaded their website or has chosen to leave this holding page active.</p>
                                                        <p>If you are the owner of this domain, you'll find your login information contained within the emails sent to you when your account was activated. Once logged in, you'll be able to delete this page (quickstart.html) and upload your new site.</p>
                                                        <p>Here are some helpful links for getting started:</p>
                                                        <p>
                                                                <a href="https://panel.dreamhost.com/"><img src="http://images.dreamhost.com/btn-orange-webpanel.png" alt="DreamHost Web Panel" title="DreamHost Web Panel" /></a>
                                                                <a href="http://wiki.dreamhost.com/"><img src="http://images.dreamhost.com/btn-blue-wiki.png" alt="DreamHost Wiki" title="DreamHost Wiki" /></a>
                                                                <a href="http://discussion.dreamhost.com/"><img src="http://images.dreamhost.com/btn-green-discussion.png" alt="DreamHost Discussion Forum" title="DreamHost Discussion Forum" /></a>
                                                        </p>
                                                </div>
                                        </div>
                                </div>
                        </div>
                </div>
        </div>
</body>

感谢您的宝贵时间和协助!

编辑:

应回答者要求,~/myapp/myapp_flask/内容如下:

- .hg
- .hgignore
- backup_config.ini
- backup_db
- db_backups
- db_repo
- dbmanage.py
- doc
- dump.sql
- example_backup_config.ini
- instance
- migrate_dbs.py
- new.db
- new_bkp.db
- requirements.txt
- restored.db
- restored.dbe
- myapp
    - __init__.py
    - __init__.py.orig
    - __init__.pyc
    - app.py
    - app.pyc
    - forms.py
    - forms.pyc
    - helpers.py
    - helpers.pyc
    - static
    - templates
    - user.py
    - user.pyc
    - views.py
    - views.pyc
- myapp.wsgi
- teste.db
- webfaction.db

注意:这可能不是一个完整的答案,但它可能是一个起点。

可能会回答您的第一个问题,并且基于 , this project looks to me like it might be a Flask web application. Flask is a Python microframework 可用于构建简单或复杂的 Web 应用程序。我根据以下观察猜测:

  1. passenger_wsgi.py 文件
  2. 观察评论.pymade by brombeer结尾的文件
  3. 您的应用程序结构列表底部名为 myapp_flask
  4. 的项目

passenger_wsgi.py 文件而言,Passenger 是 web application server used to run web applications written in things like Python, Ruby, or Node.js.

根据 brombeer 对文件扩展名的观察,以 .py 结尾的文件是 typically Python files.

就那个myapp_flask项而言,如果这个文件或文件夹中有内容,我想知道它是否包含主要的网络应用程序代码。是否可以检查该文件或文件夹以查看它是否包含应用程序代码?警告:它可能包含敏感数据(例如,密码、机密或密钥),所以我不知道是否应该将其 post 编辑到上面的原始 post 中。

所以,我想我在之前的回复中提到了您的第二个主要问题:您可以在 myapp_flask 项中找到主要的 Web 应用程序代码。但是,如果什么都没有,您可以通过查看 passenger_wsgi.py.

的内容来确定主要应用程序代码的位置。

In this example passenger_wsgi.py file 在 Passenger 文档中,它显示了如何在此类文件中引用示例(在这种情况下为 Django)应用程序。如果您在文本编辑器中打开 passenger_wsgi.py,它可能会在包含术语 application =(或类似内容)的行中显示对主应用程序代码的引用,就像前面的示例一样。也许这可以帮助您了解应用程序的名称。

然后,如果 grep 在您的系统上可用,您可以使用 grep 在文件结构中搜索应用程序名称。可能使用如下搜索命令:grep -r 'application-name' *。这可能会为您提供有关主要应用程序代码所在位置的更多线索。

关于您的 ImportError: cannot import name _remove_dead_weakref 错误的附加说明,我不知道它是否与过去的 相似。但是,我建议您在根据其他问题线程中的答案更改 Python 2 相关设置之前谨慎行事,除非您对沿途可能发生的任何事情都感到满意。我自己还没有尝试从该线程中找到答案。