我的服務器有一個前端和一個這樣的后端:
·
|__www
|__frontend
|__public
|__backend
|__public
我想讓我的所有路由都指向前端,除了有/api前綴的任何東西。
例如:
domain.com/foo points to the frontend
domain.com/api/foo points to the backend
我嘗試過使用 apache vhost 和 .htaccess
RewriteEngine On
RewriteRule ^api(/.*)?$ /backend/public$1 [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond ^ /frontend/public [L]
我怎樣才能讓它作業?
uj5u.com熱心網友回復:
您需要一個規則來避免兩個檔案夾 (frontend和backend) 也被重寫。此外,RewriteRule您的最后一條規則中缺少 a 。
RewriteEngine On
# Don't rewrite frontend nor backend
RewriteRule ^(frontend|backend)(/.*)?$ - [L,NC]
# /api/foo to /backend/public/foo
RewriteRule ^api(/.*)?$ /backend/public$1 [L,NC]
# not a file, /foo to /frontend/public/foo
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /frontend/public/$1 [L]
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/495771.html
