2017-03-08 40 views
0

我有一個wordpress網站和一個自定義生成應用程序都在同一個URL。 我正在尋找重定向我的所有CMS(客戶端應用程序)的URL到一個特定的PHP控制器文件。一旦重定向,我正在尋找從URL中刪除php文件,例如:URL.htaccess將特定的URL段重寫爲PHP文件,然後從URL中刪除php文件?

www.website.com/cms重定向到www.website.com/backend.php/cms但URL繼續顯示爲www.website.com/cms

到目前爲止,我有以下:

# Handle the custom App URLs 
RewriteCond %{HTTP_HOST} ^(www.)?website.com/cms$ 
RewriteCond %{REQUEST_URI} !^backend.php/cms/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ backend.php/cms/$1 

# Handle the Wordpress URLs by removing index.php 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 

編輯:

的問題是我有什麼不工作。

如果我去www.website.com/cms我得到一個404

如果我去www.website.com/backend.php/cms的URL不會更改爲www.website.com/cms,它保持爲www.website.com/backend.php/cms

我不是偉大的.htaccess,但認爲我正在走下正確的路線。

+0

什麼是你的問題,這個固定自己? –

+0

用更多的信息更新了我的問題,解釋了我的問題 – matty

回答

0

你嘗試只是URL路由:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/cms/(.*)$ /backend.php [L] 
#or RewriteRule ^/cms/(.*)$ /yourcms/backend.php [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 

您所有關於「理解」您在CMS閱讀REQUEST_URI做網址魔力。

+0

我試過了,它沒有工作。我的index.php網址受到了影響。 – matty

0

我結束了由具有以下重寫規則

RewriteRule ^/?cms([A-Za-z0-9\-_\/]+)/?$ /backend.php [L] 
RewriteRule ^/?cms /backend.php [L] 

感謝那些試圖幫助:)