2011-10-20 40 views
0

我陷入了一個奇怪的問題。.htaccess - mod_rewrite正在爲一些頁面工作,但不爲其他人

我有一個文件的位置/public_html/academics/courses.php

我想給的.htaccess mod_rewrite的網址如下:

原始地址:HTTP:// niecdelhi。 ac.in/academics/courses/

的mod_rewrite後:http://niecdelhi.ac.in/index.php?inc=/academics/courses/

我想要的基本上是將所有的URL mod_rewrite改爲index.php,並將URL作爲名爲「inc」的參數傳遞。然後,在index.php中,我通過include include($ _ GET ['inc'])來包含文件;

mod_rewrite正在爲網站上的某些頁面工作。我正在獲取$ inc中的URL。但是,對於其他頁面而言,這根本不起作用。

例如,考慮在服務器上存在的兩個文件:

  1. http://niecdelhi.ac.in/academics/courses.php
  2. 的http:// niecdelhi。 ac.in/academics/library.php

mod_rewrite的是工作第一,該文件都會被包含在的index.php 但對於第二個我得到的純現有的文件。不包括index.php

我希望你能理解我面臨的問題。請爲我提供解決方案。

.htaccess文件

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} !\..*$ [NC] 
RewriteCond %{QUERY_STRING} (.*) [NC] 
RewriteRule ^(.*)$ index.php?inc=$1&%1 [L] 

頁的工作:http://niecdelhi.ac.in/academics/courses/

頁不能正常工作:http://niecdelhi.ac.in/academics/library/

* 編輯 *

ŧ這裏沒有其他的.htaccess任何地方。儘管如此,我發現了一些關於正在發生的事情的線索。這個問題只發生在Linux服務器上。該代碼在Windows服務器上正常工作。我有一個Linux服務器與PHP 5.2.16。

另外,關於一些頁面的工作和一些沒有。我發現只有那些在同一個目錄中有相同名稱的文件夾才能工作。例如,學者目錄是如下:

academics/ 
    |_ courses/ 
    | |_ mba.php 
    | |_ mca.php 
    |_ courses.php 
    |_ library.php 

現在,由於courses.php具有在相同的目錄相同名稱的文件夾。它得到mod_rewrite罰款。但是library.php沒有得到mod_rewrite。

Linux服務器被跳過了實際存在的文件mod_rewrite的。爲什麼這樣 ??

+0

在文件樹中的htaccess文件低於其它兩個文件? – NVTOnline

+0

你確定你的鏈接指向添加了查詢字符串的正確地址嗎?而不是相對路徑? – NVTOnline

+0

@NVTOnline - 是的,這些文件是相同的.htaccess以下文件樹.. –

回答

0

我唯一的猜測是,還有另外一個地方的.htaccess在你的結構(最明顯的是內/學者/)被重寫規則「圖書館」。

莫不是是踢在了單詞庫,可能搞亂你重寫該文件夾內的另一個mod_rewriting規則。

請注意,它也可能是本機apache問題。例如,在ubuntu中,如果你有一個/ javascript /文件夾,在默認情況下,版本10.10(我認爲就是這樣),它會被短路到/ usr/lib/javascript或類似的東西...

Check國防部重寫在httpd.conf中的所有可能的情況下,所有dynamicaly加載conf文件,你的虛擬主機文件和finaly您的文檔根目錄的路徑...

+0

沒有其他的.htaccess其他地方...我發現這個問題的一些線索....請閱讀問題的編輯部分..謝謝... –

+0

如果你只有php文件,你想受這個規則的影響,爲什麼不簡單地做:RewriteRule ^(。*。php)index.php?inc = $ 1 [L]這通常重寫文件,但您的$ _GET仍然會被填入之前請求的內容...試試看並告訴我它是否可以正常工作... –

+0

感謝您的回覆,您建議的代碼很好,但我想重寫以下所有網址: - ' http://niecdelhi.ac.in/academics/library.php http://niecdelhi.ac.in/academics/library 的http:// niecdelhi .ac.in /學者/庫/ ' 到**的index.php?INC = /學者/庫** –

相關問題