在ubuntu apache2

时间:2016-09-23 18:25:29

标签: django apache ubuntu mod-wsgi

我想用python3在ubuntu上运行我在virtualenv中创建的Django应用程序。 virtualenv文件夹中的文件夹结构:

-bin

-include

-lib

-myapp

-share

PIP-selfcheck.json

myapp文件夹包含我的应用程序,其中配置了本教程中指定的apache文件夹:https://www.sitepoint.com/deploying-a-django-app-with-mod_wsgi-on-ubuntu-14-04/ 我在virtualenv中安装了所有需要的应用程序,经过' sudo service apache2 restart'我只看到Apache2 Ubuntu默认页面。 文件/etc/apache2/sites-enabled/000-default.conf就像在教程中一样:

<VirtualHost *:80>
    WSGIScriptAlias / /home/myuser/mysite/apache/wsgi.py
    <Directory "/home/myuser/mysite/apache/">
      Require all granted
    </Directory>
</VirtualHost>

当然,正确的路径指向我在'Venv&#39;中的项目位置。夹。 不知道在哪里继续,检查什么,感谢您的建议。

编辑: 我真的没有得到这个,我编辑了上面提到的文件,试了一下,什么都没发生,所以我把它编辑回来,重新启动后就可以了。

2 个答案:

答案 0 :(得分:1)

因此,在编辑文件后,重新启动apache,将文件编辑回来(/etc/apache2/sites-enabled/000-default.conf)。真的没有得到它,昨天几次重启并没有帮助...

答案 1 :(得分:0)

关于使用mod_wsgi的官方Django文档可以在以下网址找到:

最好咨询一下如何专门为Django设置,你缺少各种必需的配置元素。

至于为什么你仍然得到默认页面,可能是因为你将这个配置作为额外的东西添加到默认网站文件的末尾,而不是插入你所拥有的VirtualHost的内容该文件中的现有VirtualHost。如果您之后添加它,它将被忽略,因为它仍将使用现有的<body> <div id="fastSearchBox" class="fastSearchBox"> <span style="direction: rtl; float: right;">search</span> <input id="fastSearchInput" type="text" style="width: 150px; margin-right: 10px;"> </div> </body> var users = [ {data: 1, value: "foo" }, {data: 2, value: "foo2" }, {data: 3, value: "foo3" } ]; $( "#fastSearchInput").autocomplete({ source: users }); $( "#fastSearchInput").on( "autocompleteselect", function( event, ui ) { alert(ui.item.data); }); ,因为它是第一个,您还没有设置正确命名的托管。

还要注意,如果其他人说你应该使用别的东西,那么每个解决方案都会有一个学习曲线,如果这是全新的。如果要集成到现有主机系统中,没有解决方案很简单。因此,跳过查看不同的解决方案可能会浪费大量时间。选择一个你认为喜欢的并坚持下去。一个人优于其他人的想法通常是胡说八道,因为他们的表现相似。

我实际上建议你跳过甚至尝试将它集成到你的主机系统中,如果你刚刚玩的话就开始。使用可以从命令行运行的WSGI服务器,即使它只是带有Django的捆绑开发服务器。从命令行运行简单的选项是: