2016-04-11 15 views
0

Bir Ubuntu sunucusunda CKAN yüklü var. Birisine erişimi kısıtlama gereksinimimiz olduğundan, sunucudaki Temel Kimlik Doğrulama'yı yapılandırdık. Apache2'yi auth modülleriyle ve kimlik bilgilerini yönetmek için bir .htaccess dosyası kullanarak yapılandırdık. Erişimi kısıtlamayı amaçladığı gibi çalışır, ancak bir son kullanıcı kullanıcı adı/parola girdiğinde, bu kimlik bilgilerini kullanarak otomatik olarak CKAN'a giriş yaparlar. Ne yazık ki, kendim olarak giriş yapmama izin vermiyor.CKAN ile ilgili Temel Kimlik sorunu

Ben docs listelenen ile başladı apache.wsgi dosyası: http://docs.ckan.org/en/ckan-2.0/deployment.html#create-the-wsgi-script-file

Burada anlatılan rehberlik (https://lists.okfn.org/pipermail/ckan-discuss/2013-August/002862.html), şu benim apache.wsgi dosyada birkaç yeni hatlar eklendi. Ne yazık ki, hala doğru çalışmıyor. Örneğin. Temel auth paramlarını kullanarak CKAN'a giriş yapıyor.

Apache.wsgi dosyamın geçerli sürümü aşağıdadır.

import os 
activate_this = os.path.join('/usr/lib/ckan/default/bin/activate_this.py') 
execfile(activate_this, dict(__file__=activate_this)) 

from paste.deploy import loadapp 

config_filepath = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'production.ini') 
from paste.script.util.logging_config import fileConfig 
fileConfig(config_filepath) 
_application = loadapp('config:%s' % config_filepath) 
def application(environ, start_response): 
    environ['wsgi.url_scheme'] = environ.get('HTTP_X_SCHEME', 'http') 
    return _application(environ, start_response) 

Bunu düzeltmek için herhangi bir yönlendirme veya öneri var mı? Apache.wsgi dosyasına ek bilgi eklemem gerekir mi?

cevap

1

Çizgi ile pop'a ihtiyacınız var, url_scheme değil. senin apache.wsgi değişimde

yani:

application = loadapp('config:%s' % config_filepath) 

için:

_application = loadapp('config:%s' % config_filepath) 
def application(environ, start_response): 
    environ.pop('REMOTE_USER', None) 
    return _application(environ, start_response) 
+0

teşekkür ederim. Bu sorunu çözdü. – AtomEye