2011-03-23 88 views
1

我在頁面上有一個搜索表單,我用GET方法向服務器發送數據,但是當我鍵入反斜槓並單擊搜索時,我看到一個404錯誤。這是URL中的「\」。我怎樣才能防止它?URL中的反斜槓導致404錯誤

http://127.0.0.1:8080/SelfArea/wpzf/public/\ 

Apache服務器的配置文件htaccess

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

Windows 7中,WAMP服務器。

+0

你能告訴我們你的.htaccess嗎? – nitro2k01 2011-03-23 11:21:51

+0

我只是檢查我的ZF應用程序,它正常工作,即我得到錯誤:指定的無效控制器(%5C)。也許你在你的htaccess中改變了一些東西? – Marcin 2011-03-23 11:23:09

+0

@Marcin我更新我的問題,並添加htaccess – 2011-03-23 11:26:59

回答

0

幾點需要注意:

點1.您的瀏覽器應轉換反斜線FRONTSLASH。許多瀏覽器都有「更新內容」的例子:你不能在Chrome瀏覽器中直接從地址欄運行JavaScript。然而,一個好的程序員總是會想象用戶比猴子更笨,所以你的問題非常有道理!

點2.如果接受參數的話,你可能會想用剝奪斜線:

Stripslashes Function

點3.這會不會是在Linux系統中的一個問題,因爲Windows和Linux的有不同的文件結構。相信我,這將是確定:)

編輯:

PS:你可能想通過把它的「免費託管服務」,以測試它的Linux機器上!也就是說,如果你還沒有服務器。

0

有2步加載頁面時laravel發生路由錯誤: - 在URL

  1. 添加的index.php的localhost/project_name/index.php/page_name
  2. 編輯apache2.confetc/apache2執行以下操作: -

<Directory /usr/share>

`AllowOverride All` 

`Require all granted` 

</Directory>

<Directory /var/www/> 
     Options Indexes FollowSymLinks 
     AllowOverride All 
     Require all granted 
    </Directory>` 

它會正常工作手柄的所有路由錯誤。