如何在windows7上配置apache和mod

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在windows7上配置apache和mod相关的知识,希望对你有一定的参考价值。

参考技术A 1. 下载mod_wsgi-win32-ap22py27-3.3.so
2. 重命名为mod_wsgi.so ,并将其复制到 /Program Files(X86)/Apache Software Foundation/Apache22/modules目录下
3. 以管理员身份打开 httpd.conf, 找到有很多LoadModule的地方, 在里面增加一行:LoadModule wsgi_module modules/mod_wsgi.s,保存。
这时候可以重启一下你的apache,看看能不能正常的启动,如果不能正常启动,那么可能是你下载的mod_wsgi版本不对。
4. 接下来需要做的是将的 Django 项目和apache连接起来。
5. 进入你的Django项目的根目录,增加一个文件夹apache ,并在这个文件夹下创建django.wsgi 和dapache_mydjango.conf两个文件,注意,django.wsgi这个文件名不能修改.
6. 打开httpd.conf ,在最后增加一行:
Include “d:/projects/mysite/apache_django_wsgi.conf”
7.打开django.wsgi,增加下面的代码:
[crayon lang="python"]
import os, sys
sys.path.append('d:/projects/mysite')
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
[/crayon]
8.打开apache_djang_wsgi.conf 增加下面的代码:
[crayon lang="xml"]

ServerName mysite.com
WSGIScriptAlias / d:/projects/mysite/apache/django.wsgi

Options FollowSymLinks
AllowOverride
Order allow,deny
Allow from all

Alias /static "d:/projects/mysite/static/"

Order allow,deny
Options Indexes
Allow from all
IndexOptions FancyIndexing

[/crayon]
上面VirtualHost的端口要和Apache的端口一样,/static目录是放你静态的CSS和图片文件的,你可以将django管理后台的Css和图片也放在这个文件下。
9.修改计算机的host文件,增加
127.0.0.1 mysite.com
10.打开settings.py,找到STATIC_URL和TEMPLATE_DIRS,修改成如下:
STATIC_URL = ‘/static/’
TEMPLATE_DIRS = (
“d:/projects/mysite/templates”
)
这样,就配置完毕了,重启一下你的apache,在浏览器中输入 mysite.com:[port]就能看到你应用程序的首页了。Just enjoy django.

如何在 Ubuntu + Apache2.4 + mod_wsgi 上为 Ansible 配置 ARA?

【中文标题】如何在 Ubuntu + Apache2.4 + mod_wsgi 上为 Ansible 配置 ARA?【英文标题】:How to configure ARA for Ansible on Ubuntu + Apache2.4 + mod_wsgi? 【发布时间】:2018-08-20 02:17:57 【问题描述】:

我正在尝试在 Ubuntu 16.04 上安装 ARA (https://github.com/openstack/ara) 以监控我的 Ansible playbook 执行情况。

我仔细阅读文档 (http://ara.readthedocs.io/en/latest/webserver.html#debian-ubuntu),但每次测试时我都会被重定向到 http://ara.home.lab/about

这是我的配置文件:

Apache 虚拟主机:

cat /etc/apache2/sites-available/ara.conf
<VirtualHost *:80>
    # Replace ServerName by your hostname
    ServerName ara.home.lab

    ErrorLog /var/log/apache2/ara-error.log
    LogLevel warn
    CustomLog /var/log/apache2/ara-access.log combined

    WSGIDaemonProcess ara user=www-data group=www-data processes=4 threads=1
    WSGIScriptAlias / /var/www/ara/ara-wsgi

    SetEnv ANSIBLE_CONFIG /var/www/ara/ansible.cfg

    <Directory /var/www/ara>
        WSGIProcessGroup ara
        WSGIApplicationGroup %GLOBAL
        Require all granted
    </Directory>
</VirtualHost>

Ansible 配置文件:

cat /var/www/ara/ansible.cfg
[defaults]
# This directory is required to store temporary files for Ansible and ARA
local_tmp = /var/www/ara/.ansible/tmp

[ara]
# This will default the database and logs location to be inside that directory.
dir = /var/www/ara/.ara

虚拟主机目录:

$ pwd
/var/www/ara
$ ls -la
total 24
drwxr-xr-x 4 www-data www-data 4096 Mar 12 00:15 .
drwxr-xr-x 7 root     root     4096 Mar 11 23:59 ..
drwxrwx--- 3 www-data www-data 4096 Oct 27 17:00 .ansible
-rw-r--r-- 1 www-data www-data  234 Oct 27 16:57 ansible.cfg
drwx------ 2 www-data www-data 4096 Mar 12 00:15 .ara
-rwxr-xr-x 1 www-data www-data 1804 Mar 11 01:08 ara-wsgi

到目前为止,我无法从应用程序中找到任何告诉我有问题的日志。

你能帮帮我吗?

【问题讨论】:

【参考方案1】:

您的配置看起来不错,但是您告诉 Ansible 它需要加载 ARA 回调插件以及它所在的位置丢失了。

要查找 ARA 的位置,您可以运行以下命令,无论您运行的是 python2 还是 python3:

$ python -c "import os,ara; print(os.path.dirname(ara.__file__))"

如果 ARA 安装在虚拟环境中,您需要在运行该命令之前获取并激活它。

如果有效,它应该打印如下内容:

# The path for your ARA package might be different than this
/usr/local/lib/python2.7/dist-packages/ara

要将 ARA 启用为 Ansible 回调插件,请将此路径添加到 ansible.cfg 中的 callback_plugins 配置:

[defaults]
# This directory is required to store temporary files for Ansible and ARA
local_tmp = /var/www/ara/.ansible/tmp
callback_plugins = /usr/local/lib/python2.7/dist-packages/ara/plugins/callbacks

[ara]
# This will default the database and logs location to be inside that directory.
dir = /var/www/ara/.ara

您可以通过查看/var/www/ara/.ara 目录来判断这是否有效——当应用程序自行引导时,您将自动创建一个ansible.sqlite 文件。

这是您的用户 Apache 需要读取和写入权限的数据库。这是一个留给读者的练习,因为它是关于文件系统权限的——一些用户创建了一个包含$USERwww-data 的公共组。

【讨论】:

以上是关于如何在windows7上配置apache和mod的主要内容,如果未能解决你的问题,请参考以下文章

如何安装配置Apache中的mod

如何安装配置Apache中的mod

如何安装配置Apache中的mod

如何在 Ubuntu + Apache2.4 + mod_wsgi 上为 Ansible 配置 ARA?

如何安装配置Apache中的mod

如何在 apache 服务器上正确启用 mod_status?