【问题标题】:Django and PHP together in server with single ip and port onlyDjango 和 PHP 在服务器中一起使用单个 ip 和端口
【发布时间】:2013-10-26 09:03:56
【问题描述】:

我可以像这样在两个不同的端口上运行 django 和 php http://pastebin.com/2eextGad

但我想要类似的东西

54.22.22.22/app/ 到 django 项目

以及除该 URL 之外的任何内容到 PHP 文档根目录 /var/www/

我尝试过跑步 听8081

<VirtualHost *:8081>
        WSGIScriptAlias /app/ /var/www/abc/index.wsgi

        Alias /static/ /var/www/abc/static/
        <Location "/static/">
            Options -Indexes
        </Location>
        LogLevel warn
        CustomLog /var/log/apache2/access.log combined

Other than ip/app to php
Alias /var/www/
        DocumentRoot /var/www
        </VirtualHost>

如何做到这一点

【问题讨论】:

    标签: php django apache


    【解决方案1】:

    我认为这应该可行:

    <VirtualHost *:8081>
            WSGIScriptAlias /app/ /var/www/abc/index.wsgi
    
            Alias /static/ /var/www/abc/static/
            <Location "/static/">
                Options -Indexes
            </Location>
            LogLevel warn
            CustomLog /var/log/apache2/access.log combined
    
            DocumentRoot /var/www
    </VirtualHost>
    

    这使得以/app/ 开头的地址由wsgi 处理程序提供,以/static/ 开头的地址来自/var/www/abc/static/ 目录,而其他所有内容都以/var/www 提供。

    但是,您的设置存在巨大安全问题。您不应将 Django 项目保存在 DocumentRoot 文件夹内的文件夹中。您正在使任何人都可以访问所有源代码和设置(包括数据库密码和 cookie 签名密钥!)。立即将 Django 项目从/var/www 移开。

    【讨论】:

      猜你喜欢
      • 2019-08-13
      • 2021-03-31
      • 2016-04-11
      • 1970-01-01
      • 2015-01-29
      • 2021-04-15
      • 1970-01-01
      • 2015-06-26
      • 2012-10-26
      相关资源
      最近更新 更多