2016-05-30 32 views
0

我想重寫我的網址到另一個文件,如果他們不存在。我在我的網站的根目錄中有一個.htaccess文件,看起來像這樣。Apache重寫如果文件找不到另一個文件?

RewriteEngine on 

# Add slash to end of request 
RewriteCond %{REQUEST_URI} !(/$|\.) 
RewriteRule (.*) %{REQUEST_URI}/ [R=301,L] 

# API redirect 
RewriteCond %{REQUEST_URI} ^/api 
RewriteRule . api/v1.php [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{HTTP_HOST}^secondary\. 
RewriteRule . sites/secondary [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . sites/main.php [L] 

我的意圖是從同一個文件夾提供兩個站點,並使用重寫指向相應的路由器。 api重定向很好。但是,除非我指定example.comexample.com/test/正確重寫)以外的路由,否則主要和輔助重定向不起作用。

任何洞察力,非常感謝。

回答

0

使用:

RewriteEngine on 

# Add slash to end of request 
RewriteCond %{REQUEST_URI} !(/$|\.) 
RewriteRule^%{REQUEST_URI}/ [R=301,L] 

# API redirect 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^api api/v1.php [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{HTTP_HOST}^secondary\. 
RewriteRule^sites/secondary [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^sites/main.php [L] 

.因爲是至少等於一個字符。

+1

謝謝!我沒有想到這一點。 – user3703517

相關問題