제가 업그레이드/업데이트하고 있는 서버에는 php와 python을 사용하는 페이지가 있습니다. Flask 프레임워크를 사용하여 Python 기반 페이지를 다시 작성하고 wsgi를 사용하여 Apache를 구성했습니다.
으아악이전 서버에서는 디렉터리를 가리키는 URL이 기본적으로 index.php
使用 DirectoryIndex
옵션으로 설정되었습니다(다른 conf 파일에 설정됨). 새 서버에서 "내부 서버 오류" 메시지가 표시되고 오류 로그에 500 응답 코드가 표시됩니다.
궁극적인 질문은 PHP로 처리된 페이지와 Python으로 처리된 페이지를 모두 제공하도록 Apache를 구성하는 방법입니다. (참고: 플라스크 디렉토리에는 PHP로 처리된 여러 페이지가 있습니다)
편집: "php"를 제거하기 위해 또 다른 AliasMatch
行,似乎可以执行我想要的操作。我还能够从第二个 AliasMatch
줄을 추가했습니다:
<VirtualHost *:443> ServerName my_fake_site ... AliasMatch ^\/((?:flask_dir1|flask_dir2).*)\.((css|php|png)$((?:\?.*)?)) /var/www/html/app/. AliasMatch ^\/(.*)\.(css|html|php|png) /var/www/html/. WSGIDaemonProcess main_proc processes=8 python-home=/var/www/html/venv WSGIScriptAlias / /var/www/html/wsgi.py <Directory /var/www/html/> WSGIProcessGroup main_proc WSGIApplicationGroup %{GLOBAL} Require all granted </Directory> SSLEngine on ... </VirtualHost> WSGIPythonPath /var/www/html WSGIPythonHome /var/www/html/venv
P粉4312202792024-01-11 00:36:41
내 편집에서 언급했듯이 AliasMatch
지시문이 작동했습니다. 문서에 따르면 이를 통해 Apache는 정적 파일을 호스팅할 수 있으며 여기에는 PHP 파일도 포함되어 있는 것 같습니다.