2014-05-08 41 views
5

Karşılıklı bir sunucuda üretim yaptığım için garip bir sorunla uğraşıyorum. Yönetici panelimi/url/* ile tüm URL'lerle eşleştiren bir güvenlik duvarım var.Hayır POST verileri alındı ​​Symfony

Bu yönetim panelinde, gönderdiğim tüm POST verileri denetleyiciye ulaşmıyor.

var_dump($this->get('request')->request->all()) 

Uğrunda boş bir dizi , aynı şeyi verir:

var_dump($_POST) 

Bu ... artık benim web sitesinin diğer sayfaları çalışmıyor tüm formları ve CRUD işlevleri beri çok can sıkıcı (yönetici panelinde değil) doğru şekilde çalışıyor.

Chrome ve FireBug konsolu, verilerin doğru yolla gönderildiğini gösteriyor.

benim .htaccess dosyaları ile bir sorun düşünüyorum:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ web/$1 [QSA,L] 
</IfModule> 

ben web dizini

RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /web/ 
RewriteRule ^(.*)$ /$1 [L,R=301] 

işaret edecek www dizinine bu dosya var Ve ben ekledim benim web dizininin .htaccess bu

My güvenlik duvarları:

firewalls: 
    secured_area: 
     pattern: ^/ 
     anonymous: ~ 
     form_login: 
      login_path: /login 
      check_path: /login_check 
      always_use_default_target_path: true 
      default_target_path:   /admin 
      use_referer:     true 
     logout: 
      path: /logout 
      target: /login 

access_control: 
    - { path: ^/admin, roles: ROLE_ADMIN } 
Kontrolör fonksiyonunun

My PHP kodu:

public function testAction() { 
    return new Response(var_dump($_POST)); 
} 

Basit HTML formu:

<form action="{{path_for_controller}}" method="POST"/> 
<input type="text" name="search"/> 
<input type="submit" value="send"/> 
</form> 

Sadece $ this-> ('isteği') olsun -> olsun ('ara') bana verir boş ve POST da boş.

DÜZENLEME ... Gerçekten umutsuz alıyorum, yardımlarınız için teşekkür ederiz

bu benim önbelleği temizledikten sonra ancak bir an

+0

Tam olarak aynı sorun burada: http://stackoverflow.com/questions/23540085/symfony2-and-cross-site-post-request-empty-data –

+0

Merhaba, paylaşım için teşekkürler, en azından ben Bu sorunu yaşayan tek kişi değil, bir çözüm bulmayı başarabilirseniz size bilgi vereceğim. –

+0

Güvenlik duvarı kurallarınızı da ekleyebilir misiniz? – lsouza

cevap

0
için birkaç kez çalışmış fark

Üzerinde çalıştığınız sayfada PHP'de print_r($_GET) sürümünü deneyin.

+0

Bana verir: Array() 1 –

+0

$ _POST üzerinden dışarı çıkan değişkenlerdir? –

+0

$ _POST her zaman boş, denetleyicimde bir POST yöntem isteği aldım ancak veri yok. Chrome konsolu bana form verilerinin gönderildiğini gösteriyor –

2

Bu konuya bir süre önce rastladım. Ama benim problemim yönlendirme (yeniden yazma) oldu. Form doğru URL'ye gönderiliyordu, ancak yeniden yazma işlemi başka bir yere yönlendiriyordu ve yönlendirme, posta verileri boyunca devam etmiyordu.

Krom geliştirici konsolunda, Preserve log'u işaretlerseniz, onu görebileceksiniz.

Ben ise, bunu içinden yapmaktan çok, set senin DocumentRootweb dizinine söyleyebilirim bu kurulum Symfony2'de için sorunları

RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /web/ 
RewriteRule ^(.*)$ /$1 [L,R=301] 

En şeyi neden olan sizin durumda düşünüyorum.htaccess

+0

Merhaba, cevap vermek için çok zaman ayırdığım için üzgünüm, yarın bunu deneyeceğim ve çalışıp çalışmadığını size bildireceğim. Teşekkürler! –

+0

Htaccess ile bazı yapılandırmaları denedim, ancak hiçbiri işe yaramadı. Ayrıca, Koru günlükleri bana herhangi bir yönlendirme göstermedi, sorun değil gibi görünüyor –