Mesaj İşleyicilerde 405 mülkü için yoksayma izni başlığını yapılandırma

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

İstemci-sunucu iletişiminde, sunucu iletişim sırasında 405 Method Not Allowed HTTP durum koduyla yanıt verir. İstemci tarafından sunulan HTTP istek yönteminin sunucu tarafından bilinmesi ancak hedef kaynak tarafından desteklenmiyor. Benzer şekilde Apigee Edge'de arka uç sunucusu 405 Method Not Allowed. HTTP durum koduyla yanıt ver

Apigee Edge, arka uç sunucusunun 405 Method Not Allowed yanıtları göndermesini bekliyor spesifikasyona göre Allow başlığında izin verilen yöntemlerin listesiyle birlikte RFC 7231, bölüm 6.5.5: 405 Yönteme İzin Verilmiyor.

Allow üstbilgisi şu biçimde gönderilmelidir:

Allow: HTTP_METHODS

Örneğin, arka uç sunucunuz GET, POST ve HEAD yöntemleri varsa Allow başlığında bunların bulunduğundan emin olmanız gerekir şu şekilde:

Allow: GET, POST, HEAD

Arka uç sunucusu, HTTP durum koduyla birlikte Allow üstbilgisini göndermezse 405 Method Not Allowed, sonrasında Apigee, protocol.http.Response405WithoutAllowHeader hata koduyla 502 Bad Gateway HTTP durum kodunu istemci uygulamasıdır. Bu hatayı gidermek için önerilen çözüm teknik özelliklerine uymasını sağlamak için arka uç sunucusunu RFC 7231, bölüm 6.5.5: 405 Yönteme İzin Verilmiyor veya hata işlemeyi ve şunlar da dahil olmak üzere 405 Method Not Allowed HTTP durum koduyla yanıt ver: Sorun giderme başucu kitabında açıklandığı şekilde Allow başlığı 502 Hatalı Ağ Geçidi - Yanıt 405 (Üstbilgiye İzin Vermiyor).

Ancak bazı istisnai durumlarda, arka ucunuzu düzeltmeniz veya API Proxy'sini kullanarak sorunu hemen giderin.

Bu gibi durumlarda, 405 özelliği için "izin verme" başlığını ayarlayabilirsiniz Yer: HTTP.ignore.allow_header.for.405 Geçici olarak İleti İşlemci düzeyi. Bu özelliğin true olarak ayarlanması Apigee'nin istemci uygulamalarına 502 Bad Gateway yanıtını döndürmesini zorlaştırır. arka uç sunucusu, 405 Method Not Allowed HTTP durum kodunu Allow başlığı.

Arka uç sunucunuzu Allow üst bilgisi ile 405 Method Not Allowed HTTP durum kodu gönderecek şekilde düzeltecek duruma geldiğinizde, mülkü geri alabilirsiniz HTTP.ignore.allow_header.for.405 değerini varsayılan değere false olarak ayarlayacağız.

Başlamadan önce

Bu dokümandaki adımları kullanmadan önce aşağıdaki konuları anladığınızdan emin olun:

İleti İşlemcilerinde 405 özelliği için "izin ver" üstbilgisini "doğru" olarak yapılandırma

Apigee Edge'de HTTP.ignore.allow_header.for.405 özelliği Varsayılan olarak false. Bu sayede Apigee Edge, protocol.http.Response405WithoutAllowHeader hata koduyla 502 Bad Gateway öğesini şuraya döndürebilir: arka uç sunucusu, Allow üstbilgisi olmadan 405 Method Not Allowed HTTP durum kodunu gönderirse istemci uygulamalar. Apigee Edge'in 502 Bad Gateway değerini istemci uygulamalara gönderiyorsanız, İleti üzerinde HTTP.ignore.allow_header.for.405 ile true arasında İşlemciler.

Bu bölümde, mülkün nasıl yapılandırılacağı açıklanmaktadır. HTTP.ignore.allow_header.for.405 - true Mesaj İşleyicileri (jetonu bkz. söz dizimine uygun şekilde) kullanarak Edge'i yapılandırma.

  1. İleti İşleyici makinesinde, aşağıdaki dosyayı bir düzenleyicide açın. Eşleşmezse bir liste oluşturabilirsiniz.

    /opt/apigee/customer/application/message-processor.properties
    

    Örneğin, dosyayı vi'ye aşağıdaki bilgileri girin:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Özellikler dosyasına aşağıdaki biçimde bir satır ekleyin:
    conf_http_HTTP.ignore.allow_header.for.405=true
    
  3. Değişikliklerinizi kaydedin.
  4. Özellikler dosyasının, aşağıda gösterildiği gibi apigee kullanıcısına ait olduğundan emin olun:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Mesaj İşleyici'yi aşağıda gösterildiği gibi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Birden fazla İleti İşleyiciniz varsa İletilerin tamamını oluşturmak için yukarıdaki adımları İşlemciler.

405 özelliği için "izin ver" üstbilgisini yoksayma, İleti İşlemcilerinde doğru değerine ayarlanıyor.

Bu bölümde, mülkün HTTP.ignore.allow_header.for.405, true olarak başarıyla güncellendi tıklayın.

Güncelleme için conf_http_HTTP.ignore.allow_header.for.405 jetonunu kullansanız da özelliğinin değerini Mesaj İşleyen'e ait değilse, gerçek mülkün HTTP.ignore.allow_header.for.405 true olarak ayarlandı.

  1. İleti İşleyici makinesinde özelliği arayın. HTTP.ignore.allow_header.for.405 /opt/apigee/edge-message-processor/conf dizininde mevcut olup olmadığını kontrol edin. aşağıda gösterildiği gibi true olarak ayarlandı:
    grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
    
  2. Özellik, Mesaj İşleyici'de başarıyla güncellenirse yukarıdaki komut HTTP.ignore.allow_header.for.405 özelliğinin değerini şu şekilde göstermelidir: http.properties dosyasında aşağıda gösterildiği gibi true:
    /opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=true
    
  3. HTTP.ignore.allow_header.for.405 özelliğinin değerini false ardından şurada açıklanan tüm adımları izlediğinizi doğrulayın: 405 özelliği için "izin ver" üstbilgisini "doğru" olarak yapılandırma İleti İşlemcilerinin doğru olduğundan emin olun. Atladığınız herhangi bir adım varsa tüm adımları tekrar tekrarlayın sağlayabilir.
  4. Mülkü hâlâ değiştiremiyorsanız HTTP.ignore.allow_header.for.405, ardından Apigee Edge Destek Ekibi ile iletişime geçin.

405 özelliği için izin verme üst bilgisini ileti işlemcilerinde false (yanlış) olarak yapılandırma

Bu bölümde, mülkün nasıl yapılandırılacağı açıklanmaktadır. HTTP.ignore.allow_header.for.405 varsayılan değerine false Edge nasıl yapılandırılır?.

  1. HTTP.ignore.allow_header.for.405 özelliğinin şu şekilde değiştirilip değiştirilmediğini doğrulayın: true. Bu işlemi, bu mülkü arayarak yapabilirsiniz. /opt/apigee/edge-message-processor/conf dizininde bulabilirsiniz ve değerini girin:
    grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
    
  2. Özellik, Mesaj İşleyici'de true değerine ayarlanırsa yukarıdaki komut HTTP.ignore.allow_header.for.405 özelliğinin değerini şu şekilde göstermelidir: http.properties dosyasında aşağıda gösterildiği gibi true:
    /opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=true
    
  3. Yukarıdaki komut HTTP.ignore.allow_header.for.405 mülkünün gösterildiğini gösteriyorsa false (varsayılan değer) değerine ayarlanırsa başka bir işlem yapmanız gerekmez. Yani, aşağıdaki adımları atlayın.
  4. HTTP.ignore.allow_header.for.405 özelliği true değerine ayarlanırsa ve ardından, false varsayılan değerine dönmek için aşağıdaki adımları uygulayın.
  5. İleti İşleyici makinesinde, aşağıdaki dosyayı bir düzenleyicide açın:

    /opt/apigee/customer/application/message-processor.properties
    

    Örneğin, dosyayı vi'ye aşağıdaki bilgileri girin:

    vi /opt/apigee/customer/application/message-processor.properties
    
  6. Aşağıdaki satırı özellikler dosyasından kaldırın:
    conf_http_HTTP.ignore.allow_header.for.405=true
    
  7. Değişikliklerinizi kaydedin.
  8. Özellikler dosyasının, aşağıda gösterildiği gibi apigee kullanıcısına ait olduğundan emin olun:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  9. Mesaj İşleyici'yi aşağıda gösterildiği gibi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  10. Birden fazla İleti İşleyiciniz varsa İletilerin tamamını oluşturmak için yukarıdaki adımları İşlemciler.

405 özelliği için "izin ver" üstbilgisini yoksayma, İleti İşlemcilerinde "false" (yanlış) değerine ayarlı

Bu bölümde, mülkün HTTP.ignore.allow_header.for.405, false olarak başarıyla güncellendi tıklayın.

Jetonu kullansanız bile Mesajdaki değeri güncellemek için conf_http_HTTP.ignore.allow_header.for.405 İşleyen, gerçek mülkün HTTP.ignore.allow_header.for.405 olduğunu doğrulamanız gerekir false olarak ayarlandı.

  1. İleti İşleyici makinesinde özelliği arayın. /opt/apigee/edge-message- processor/conf dizininde HTTP.ignore.allow_header.for.405 ve gösterildiği gibi false olarak ayarlanıp ayarlanmadığını kontrol edin aşağıda bulabilirsiniz:
    grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
    
  2. Özellik, Mesaj İşleyici'de başarıyla güncellenirse yukarıdaki komut HTTP.ignore.allow_header.for.405 özelliğinin değerini şu şekilde göstermelidir: http.properties dosyasında aşağıda gösterildiği gibi false:
    /opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=false
    
  3. HTTP.ignore.allow_header.for.405 özelliğinin değerini true, ardından şurada açıklanan tüm adımları izlediğinizi doğrulayın: 405 özelliği için "izin ver" üst bilgisini ileti işlemcilerinde "false" (yanlış) olarak yapılandırma sağlayabilir. Atladığınız herhangi bir adım varsa tüm adımları doğru şekilde tekrar edin.
  4. Mülkü hâlâ değiştiremiyorsanız HTTP.ignore.allow_header.for.405, ardından Apigee Edge Destek Ekibi ile iletişime geçin.