Files
roa2web-service-auto/.claude/rules/claude-learn-deployment.md
Claude Agent b137e80b71 feat: multi-Oracle server support with runtime switching
Complete implementation of multi-server Oracle database support:

Backend:
- Multi-pool Oracle with lazy loading per server
- Email-to-server cache for automatic server discovery
- JWT tokens include server_id claim
- /auth/check-identity and /auth/check-email endpoints
- /auth/my-servers endpoint for listing user's accessible servers
- Server switch with password re-authentication

Frontend:
- New ServerSelector component for header dropdown
- Multi-step login flow (identity → server → password)
- Server switching from header with password modal
- Mobile drawer menu with server selection
- Dark mode support for all new components
- URL bookmark support with ?server= query param

Scripts:
- Unified start.sh replacing start-prod.sh/start-test.sh
- Unified ssh-tunnel.sh with multi-server support
- Updated status.sh for new architecture

Tests:
- E2E tests for multi-server and single-server login flows
- Backend unit tests for all new endpoints
- Oracle multi-pool integration tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 22:39:06 +00:00

1.4 KiB

Claude Learn: deployment

P: IIS URL Rewrite Rules for SPA with Multiple API Backends

@2025-12-22 #iis #deployment #spa | inferred:med Configure IIS web.config to proxy different API paths to different backend ports while serving SPA for all other routes.

<rewrite>
  <rules>
    <rule name="Proxy Reports API" stopProcessing="true">
      <match url="^api/reports/(.*)" />
      <action type="Rewrite" url="http://localhost:8001/api/{R:1}" />
    </rule>
    <rule name="SPA Fallback" stopProcessing="true">
      <match url=".*" />
      <conditions><add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /></conditions>
      <action type="Rewrite" url="/index.html" />
    </rule>
  </rules>
</rewrite>

P: Scripturi pentru pornire/oprire servere ROA2WEB

@2026-01-07 #scripts #server-management | explicit:high Serverele se pornesc și opresc DOAR cu scripturile dedicate:

  • ./start.sh prod - pornește tot (SSH tunnel + backend + frontend) în mod producție
  • ./start.sh test - pornește în mod test
  • ./start-backend.sh restart - restartează doar backend-ul
  • ./start-frontend.sh restart - restartează doar frontend-ul
  • ./status.sh - verifică starea serviciilor Nu folosi: pkill, fuser -k, sau alte comenzi manuale pentru oprire.