我浏览了有关该主题的大量链接,这些链接专门用于在Ubuntu服务器上部署Django和Apache.最终,我找到了Django Deployement Installation to Ubuntu 12.04 Server链接,这使我比其他任何指南都走得更远.所以,现在,我到了这...

我浏览了有关该主题的大量链接,这些链接专门用于在Ubuntu服务器上部署Django和Apache.最终,我找到了Django Deployement Installation to Ubuntu 12.04 Server链接,这使我比其他任何指南都走得更远.所以,现在,我到了这一点-我安装了所有软件和依赖项,启用了mod_WSGI,安装了Python环境和Django,启动了一个新项目,等等.我称我的域名为“ dynamics”.因此,我在/ etc / apache2 / sites-available文件夹中的动态文件现在看起来像这样:
<VirtualHost *:80>
ServerAdmin root@dynamics
ServerName dynamics
Alias /site_media/ /srv/my_project/app/webapp/site_media/
Alias /static/ /srv/my_project/venv/lib/python2.7/site-packages/django/contrib/admin /static/
Alias /robots.txt /srv/my_project/app/webapp/site_media/robots.txt
Alias /favicon.ico /srv/my_project/app/webapp/site_media/favicon.ico
CustomLog "|/usr/sbin/rotatelogs /srv/my_project/logs/access.log.%Y%m%d-%H%M%S 5M" combined
ErrorLog "|/usr/sbin/rotatelogs /srv/my_project/logs/error.log.%Y%m%d-%H%M%S 5M"
LogLevel warn
WSGIDaemonProcess dynamics user=itsme group=itsme processes=1 threads=15 maximum- requests=10000 python-path=/srv/my_project/venv/lib/python2.7/site-packages python- eggs=/srv/my_project/run/eggs
WSGIProcessGroup dynamics
WSGIScriptAlias / /srv/my_project/app/conf/apache/django.wsgi
<Directory /srv/my_project/app/webapp/site_media>
Order deny,allow
Allow from all
Options -Indexes FollowSymLinks
</Directory>
<Directory /srv/my_project/app/conf/apache>
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
但是,当我启动apache并转到localhost时,看到“未找到错误”,如果我改为尝试转到http:// dynamics /,则会重定向到google搜索页面.我认为我需要进行一些额外的配置,但是我不知道哪些配置.大概,我需要在apache.conf中指定ServerRoot(但是对于所有这些django文件夹,我仍然不知道应该确切指向何处).
编辑
现在,情况更糟.我试图重新安装apache,但是当我转到localhost时,浏览器想要加载一个页面,如文件.所以,我一步一步地做了:
1. sudo apt-get remove apache2 # remove to install from scratch
2. sudo apt-get update
3. sudo apt-get install apache2
4. sudo a2dissite default # disable the default site
5. create dynamics file in /etc/apache2/sites-available
6. dynamics file contains these lines:
<VirtualHost *:80>
ServerAdmin root@dynamics
ServerName dynamics
DocumentRoot /home/username/Sites/dynamics
<Directory /home/username/Sites/dynamics/>
Options Indexes FollowSymLinks MultiViews
AllowOverride Node
Order allow,deny
allow from all
</Directory>
</VirtualHost>
7. /etc/apache2/apache2.conf contains `ServerName dynamics`.
如果我还将SeverRoot也指定为/ home / username / Sites / dynamics,则在重新启动apache时会收到数百个错误,因此我不指定它.
问题:
1. If I go to `http://dynamics`, I'm redirected to google search page
2. If I go to localhost, the browser wants to load a page like a file
因此,重新安装后,我什至退后了一步.我什至不能做一个虚拟主机.在此过程中,我遇到了一件事-如果您执行sudo apt-get remove或sudo apt-get purge,尽管他们说了什么,但我仍然看到apache配置文件未更改-就像卸载前一样.所以,我现在有一个额外的问题:
1. How to uninstall completely apache. All guides and tips that I followed left apache config files just as they were.
编辑
好吧,我从一开始就重新安装了Apache,添加了虚拟主机动态特性(首先,没有与django的任何链接),然后我遵循了Daniel Roseman的建议-修正了主机文件.至少,这部分无效.我可以将index.html文件添加到dynamics文件夹中,如果我转到http:// dynamics /,则会看到此页面.但是,我所有尝试构建django项目并在相同URL http:// dynamics上运行的尝试均以失败告终.每当我收到此错误“未找到”时.大量的指南,数百个博客和大量的手册似乎完全没有用,无法使(我认为)最简单的任务成为可能-仅在Apache上运行django项目.
编辑
我将开始悬赏问题.现在,我只想预先对所有内容进行形式化.问题是如何在Ubuntu上部署Django和Apache?要求:
Strongly required:
1. Ubuntu 12.04
2. Python 3.3.4
3. Apache 2.2.22
4. mod_wsgi
不太强烈:5.如果有人要创建一个正在运行的测试用例,那将是很酷的.因此,我的最终目标是创建一个微型网络项目,在这里我可以使用f2py调用fortran子例程.如果可以在这种环境下进行这种连接,那么我将完全无所事事.可以说我想拥有一个称为动态的具体虚拟主机.因此,我想将所有项目的文件存储在此目录/ home / victor / dynamics /中.我需要逐步的指导,而不仅仅是一些技巧.并希望此指令(如果有人能够成功实现)将在像我这样的django newbeis中得到难以置信的欢迎.
解决方法:
您需要运行sudo a2ensite dynamics来启用动态conf(或者您可以将其手动符号链接到启用了sites),然后使用sudo /etc/init.d/apache2 restart重新启动Apache.
编辑看起来另一个问题是您正在尝试将虚拟主机与一个不存在且与您的计算机没有关联的域名(即动态)相关联.如果要这样访问它,则需要编辑/ etc / hosts以将该名称指向您的本地主机:在该文件中添加以下行:
127.0.0.1 dynamics
别忘了,这只是您计算机的黑客.对于真正的部署,您需要一个可通过DNS解析的正确域名.
本文标题为:python-在Ubuntu上部署Django Apache


基础教程推荐
- anaconda安装后打不开解决方式(亲测有效) 2022-10-20
- 是否有一个可以填充本机Windows表单字段的python模块? 2023-11-12
- Anaconda如何查看自己目前安装的包详解 2023-08-04
- python3使用ctypes在windows中访问C和C++动态链接库函数示例 2023-09-03
- Python lambda 匿名函数优点和局限性深度总 2022-08-30
- 如何在Python中通过管道传递Python进程的输出? 2023-11-14
- 四步教你学会打包一个新的Python模块 2022-10-20
- Python第三方库qrcode或MyQr生成博客地址二维码 2023-08-09
- centos7 安装python3.7 2023-11-12
- Python Paramiko模块用法介绍 2023-10-08