mirror of
				https://github.com/django/django.git
				synced 2025-11-03 21:25:09 +00:00 
			
		
		
		
	Beefed up 'If you get a segmentation fault' section in docs/modpython.txt
git-svn-id: http://code.djangoproject.com/svn/django/trunk@2311 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
		
							parent
							
								
									c1dded685d
								
							
						
					
					
						commit
						e9a1e9fed6
					
				
					 1 changed files with 27 additions and 4 deletions
				
			
		| 
						 | 
					@ -202,9 +202,32 @@ read, but it's how mod_python does things.)
 | 
				
			||||||
If you get a segmentation fault
 | 
					If you get a segmentation fault
 | 
				
			||||||
===============================
 | 
					===============================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
If Apache causes a segmentation fault, it's probably because you're running
 | 
					If Apache causes a segmentation fault, there are two probable causes, neither
 | 
				
			||||||
mod_python and mod_php in the same Apache instance, with MySQL as your database
 | 
					of which has to do with Django itself.
 | 
				
			||||||
backend. This is a known mod_python issue, not a Django issue, and there's more
 | 
					 | 
				
			||||||
information in the `mod_python FAQ entry`.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    1. It may be because your Python code is importing the "pyexpat" module,
 | 
				
			||||||
 | 
					       which may conflict with the version embedded in Apache. For full
 | 
				
			||||||
 | 
					       information, see `Expat Causing Apache Crash`_.
 | 
				
			||||||
 | 
					    2. It may be because you're running mod_python and mod_php in the same
 | 
				
			||||||
 | 
					       Apache instance, with MySQL as your database backend. In some cases,
 | 
				
			||||||
 | 
					       this causes a known mod_python issue due to version conflicts in PHP and
 | 
				
			||||||
 | 
					       the Python MySQL backend. There's full information in the
 | 
				
			||||||
 | 
					       `mod_python FAQ entry`_.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					If you continue to have problems setting up mod_python, a good thing to do is
 | 
				
			||||||
 | 
					get a barebones mod_python site working, without the Django framework. This is
 | 
				
			||||||
 | 
					an easy way to isolate mod_python-specific problems. `Getting mod_python Working`_
 | 
				
			||||||
 | 
					details this procedure.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The next step should be to edit your test code and add an import of any
 | 
				
			||||||
 | 
					Django-specific you're using -- your views, your models, your URLconf, your RSS
 | 
				
			||||||
 | 
					configuration, etc. Put these imports in your test handler function and access
 | 
				
			||||||
 | 
					your test URL in a browser. If this causes a crash, you've confirmed it's the
 | 
				
			||||||
 | 
					importing of Django code that causes the problem. Gradually reduce the set of
 | 
				
			||||||
 | 
					imports until it stops crashing, so as to find the specific module that causes
 | 
				
			||||||
 | 
					the problem. Drop down further into modules and look into their imports, as
 | 
				
			||||||
 | 
					necessary.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. _Expat Causing Apache Crash: http://www.dscpl.com.au/articles/modpython-006.html
 | 
				
			||||||
.. _mod_python FAQ entry: http://modpython.org/FAQ/faqw.py?req=show&file=faq02.013.htp
 | 
					.. _mod_python FAQ entry: http://modpython.org/FAQ/faqw.py?req=show&file=faq02.013.htp
 | 
				
			||||||
 | 
					.. _Getting mod_python Working: http://www.dscpl.com.au/articles/modpython-001.html
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue