2011-01-06 2 views
0

나는 wsgi와 아파치로 달고있다.django + apache2 + ssl : URL을 PHP 파일로 라우팅 하시겠습니까?

일부 URL을 웹 사이트의 PHP 부분으로 라우트하고 싶습니다. django/wsgi와 PHP 콘텐츠 모두 SSL을 필요로하기 때문에 가상 이름 호스팅을 사용할 수 없습니다. 어떻게해야합니까?

  1. 리디렉션 할 대체 NameVirtualHost가 없기 때문에 Apache 구성의 RewriteEngine이 작동하지 않습니까?

  2. urls.py를 django 응용 프로그램보기 대신 PHP 파일로 리디렉션 할 수 있습니까?

고마워요!

+1

평범한 오래된 ''의 문제점은 무엇입니까? 하나의 위치는 mod_wsgi입니다. 다른 위치는 PHP입니다. 왜 그렇게되지 않을까요? –

답변

0

: 그것은 작동합니다, 나는 정말 권하고 싶지 않다, 그러나 당신이 시도를 줄 수있는 확실하지 않음 원하는 결과. 내가 /srv/www.site.com/www/somefolder/로 PHP 파일을 넣을 수 있습니다

alias /somefolder/ /srv/www.site.com/www/somefolder/ 
WSGIScriptAlias//srv/www.site.com/myapp/app.wsgi 

그들은 PHP로 실행 : 난 그냥 그것을 테스트했습니다.

+0

감사합니다. 위에서 설명한대로 작동하도록하십시오. 여러 사이트와 여러 SSL 인증서가 있으므로 궁극적으로 각 SSL 인증서에 해당하는 모든 사이트를 다른 가상 컴퓨터로 이동하는 것이 더 쉽습니다. – user537437

0

아파치 가상 호스트가 WGSI를 사용할 수있게되면 모든 요청이 장고로 전달되므로 보안 문제가 심각해 보입니다. 제작시 Django를 통해 미디어를 제공하는 것은 좋지 않은 것처럼 권장되지 않을 수도 있습니다.

그렇다면 PHP에서 정적 미디어처럼 처리하는 것이 좋습니다. 당신이 얻을 수있는 가상 호스트 섹션에서 WSGIScriptAlias ​​라인 전에 PHP 영역에 별칭을 넣을 수 있습니다

urlpatterns = patterns( 
    (r'^php/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/abs/path/to/php'}), 
)