Ev URL'si olan Python/Flask uygulamasında basit bir uygulama oluşturdum (www.site.com/
). Bir HostGator paylaşılan hesabı barındırmak için aldım, bu yüzden sadece .htaccess
erişimim var, ancak başka bir Apache yapılandırma dosyası yok.Kök URL'de (/ - yolsuz) bir FastCGI betiğini nasıl çalıştırabilirim?
Uygulamayı çalıştırmak için bir FastCGI betiği kuruyorum (these instructions'u izleyerek), ancak URL'nin bir /index.fcgi
veya başka bir yola sahip olmasını gerektirir. Kök yolunu (/) doğrudan FastCGI betiği tarafından sunulabilir miyim? Ayrıca, /static/
ve /favicon.ico
gibi klasörler Apache tarafından sunulmalıdır. Ben .htaccess
olarak var şimdi ne
geçerli:
AddHandler fcgid-script .fcgi
DirectoryIndex index.fcgi
RewriteEngine On
RewriteBase/
RewriteRule ^index.fcgi$ - [R=302,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.fcgi/$1 [R=302,L]
emin değilim ama Apache sürüm 2.2 olduğunu düşünüyorum.
teorik soru, [tercih edildiğini] cevap verebilir (// meta.stackoverflow.com/q/8259) burada cevabın önemli kısımlarını dahil etmek ve referans için bağlantıyı sağlamak. – manetsus
Birkaç değişiklikten sonra, bu gitmek için yol oldu. Ancak, uygulama hala her 'url_for()' çağrısına '/ index.fcgi' eklenmiştir (Flask kullanıyorum mı demiştim?). Ama ben resmi Flask sitesinde açıklanan 'ScriptNameStripper' bulundu: http://flask.pocoo.org/docs/0.11/deploying/fastcgi/#configuring-apache –