简体   繁体   中英

Django and PHP simultaneous use

I have an Apache server with PHP support. I also installed Python with mod_wsgi and with mysql-connector . Besides I installed Django. Now, I want to try to use PHP and Python simultaneously at the server side. The catch is, I worked with PHP for a couple of years and I see that it is becoming less and less popular, so I plan to port some of my PHP-code to Python-code, or just to try it, to see how they work together. So, I now have a site located at C:\\Apache\\htdocs and I created a first Django project at C:\\WebPython\\djsite . Inside djsite I have djsite folder and four files _init_.py, settings.py, urls.py and wsgi.py . In my site I want to address both to PHP handlers (or scripts) and to Python scripts, so, I guess, the problem is in how to config httpd.conf . I looked through many forum threads here at stackoverflow and outside, but still I can't make it work. Now, my httpd.conf looks like this:

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

You should see this question then:

PHP script inside Django template

It has a link to this:

http://animuchan.net/django_php/

Running PHP with Django would be a mess though.

Hello Like Every Body Else Said Its A terrible idea but Refer To Django Documentation adding this to http.conf on your apache2 and tweek the wsgi.py file will work 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>

and change If multiple Django sites are run in a single mod_wsgi process, all of them will use the settings of whichever one happens to run first. This can be solved by changing:

in wsgi.py, to:

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

or by using mod_wsgi daemon mode and ensuring that each site runs in its own daemon process.

Fixing UnicodeEncodeError for file uploads

If you get a UnicodeEncodeError when uploading files with file names that contain non-ASCII characters, make sure Apache is configured to accept non-ASCII file names:

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

A common location to put this configuration is /etc/apache2/envvars.

See the Files section of the Unicode reference guide for details.

See More At https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM