2015-02-24 52 views
1

我已經徹底搜查各種方法來刪除文件夾是在URL的中間,如下圖所示的例子中的網址在任何地方:從URL切割一個文件夾的.htaccess,說文件夾可以

我有什麼:

http://www.website.com/company/pages/section/content 

我想擺脫/頁/部分,因此它看起來就像這樣:

http://www.website.com/company/section/content 

值得注意的是,我已經使用位的.htaccess的,刪除.php擴展名nsion從出現,所以也許這與所需的重定向衝突?下面是我用它來去除.PHP:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC] 

到目前爲止,我已經找到了解決方案,似乎如果你想刪除的URL後,作爲根文件夾的工作很大,但/頁/文件夾可以在我工作的網站(有時它們位於根,有時位於/ company /之後,有時位於/ company/data /之後)的任何級別上。唯一可以預測的是文件夾的名稱,它始終是「/ pages」。

供參考,這是我試過的方法沒有奏效:

Options +FollowSymLinks -MultiViews 
RewriteEngine On 
RewriteRule ^pages/(.*)$ /$1 [L,NC,R] 

在此先感謝任何人誰可以提供幫助。

+0

哪裏是你的.htaccess在什麼位置? '/ company'是一個真正的目錄嗎?同時顯示您的完整.htaccess問題 – anubhava 2015-02-24 15:00:52

+0

.htaccess位於根(http://www.website.com/)。當前htaccess:選項+ FollowSymlinks -MultiViews RewriteEngine在 RewriteCond%{REQUEST_FILENAME}!-f RewriteRule ^([^ \。] +)$ $ 1.php [NC] – Bad 2015-02-24 15:01:47

回答

0

試試這個代碼在根目錄的.htaccess:

Options +FollowSymlinks -MultiViews 
RewriteEngine On 

RewriteRule ^(company)/((?!pages/).+)$ $1/pages/$2.php [L,NC] 

RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC] 
RewriteRule ^([^.]+)/?$ $1.php [L] 
+0

您好,感謝您的幫助。有了這個,我得到一個錯誤,而不是頁面:未找到在此服務器上找不到請求的URL /公司/網頁/節/內容。 – Bad 2015-02-24 15:14:54

+0

使用添加的R,頁面確實加載,但/ pages /仍在url中。也許我應該嘗試重新安裝我的Apache,看起來像我的問題是不應該發生的事情。 – Bad 2015-02-24 15:21:09

+0

不,在一家公司的網站上工作,這是從別人的頭開始構建的。 – Bad 2015-02-24 15:23:54

相關問題