【问题标题】:Django and PHP simultaneous useDjango和PHP同时使用
【发布时间】:2014-01-03 13:57:52
【问题描述】:

我有一个支持PHPApache 服务器。我还安装了Pythonmod_wsgimysql-connector。此外,我安装了 Django。现在,我想尝试在服务器端同时使用PHPPython。问题是,我与PHP 合作了几年,我发现它越来越不受欢迎,所以我计划将我的一些 PHP 代码移植到 Python 代码,或者只是尝试一下,以看看他们是如何一起工作的。所以,我现在有一个位于C:\Apache\htdocs 的站点,并且我在C:\WebPython\djsite 创建了第一个Django 项目。在djsite 里面我有djsite 文件夹和四个文件_init_.py, settings.py, urls.py and wsgi.py。在我的站点中,我想同时处理 PHP 处理程序(或脚本)和 Python 脚本,所以,我猜,问题在于如何配置 httpd.conf。我在stackoverflow和外部查看了许多论坛线程,但我仍然无法使其工作。现在,我的 httpd.conf 看起来像这样:

...
ServerName localhost
<Directory "c:/Apache/htdocs">
   Options Indexes FollowSymLinks
</Directory> 
<IfModule dir_module>
  DirectoryIndex index.html index.htm index.php
</IfModule>
...

【问题讨论】:

  • 您希望它们在同一个应用程序上同时运行吗?
  • 是的,我希望它们同时运行

标签: php python django apache


【解决方案1】:

你应该会看到这个问题:

PHP script inside Django template

它有一个链接:

http://animuchan.net/django_php/

虽然用 Django 运行 PHP 会很麻烦。

【讨论】:

    【解决方案2】:

    你好,就像其他人说的那样,这是一个糟糕的主意,但请参阅 Django 文档,将其添加到 apache2 和 tweek 上的 http.conf wsgi.py 文件将起作用 WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py WSGIPythonPath /path/to/mysite.com<Directory /path/to/mysite.com/mysite> <Files wsgi.py> Require all granted </Files> </Directory>

    并改变 如果多个 Django 站点在单个 mod_wsgi 进程中运行,所有站点都将使用碰巧首先运行的站点的设置。这可以通过改变来解决:

    在 wsgi.py 中,到:

    os.environ["DJANGO_SETTINGS_MODULE"] = "{{ project_name }}.settings"
    

    或通过使用 mod_wsgi 守护进程模式并确保每个站点在其自己的守护进程中运行。

    修复文件上传的 UnicodeEncodeError

    如果您在上传文件名包含非 ASCII 字符的文件时遇到 UnicodeEncodeError,请确保将 Apache 配置为接受非 ASCII 文件名:

    export LANG='en_US.UTF-8'
    export LC_ALL='en_US.UTF-8'
    

    放置此配置的常见位置是 /etc/apache2/envvars。

    有关详细信息,请参阅 Unicode 参考指南的文件部分。

    https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/查看更多信息

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      • 1970-01-01
      • 2021-10-28
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      相关资源
      最近更新 更多