shakauthossain commited on
Commit
d87390f
·
1 Parent(s): 1eebc20

ip update

Browse files
Files changed (3) hide show
  1. .gitignore +29 -0
  2. Dockerfile +1 -1
  3. faq_routes.py +6 -7
.gitignore ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.evn
2
+ vvenv
3
+ .venv
4
+ .env
5
+ .env.*
6
+ .env.local
7
+ .env.development.local
8
+ .env.test.local
9
+ .env.production.local
10
+ vvchat
11
+ .vscode
12
+ .vscode-test
13
+
14
+ vvchat
15
+ __pycache__
16
+ __pycache__
17
+ .pytest_cache
18
+ .mypy_cache
19
+ .coverage
20
+ .coverage.*
21
+ .DS_Store
22
+ .idea
23
+ .vscode-test
24
+ .vscode-test-*
25
+ .vscode-test-*
26
+ *.egg-info
27
+ dist
28
+ build
29
+ node_modules
Dockerfile CHANGED
@@ -23,5 +23,5 @@ RUN chmod 666 /app/faqs.csv /app/question_limit_log.json
23
  EXPOSE 7860
24
 
25
  # Run the FastAPI app using uvicorn
26
- CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
27
 
 
23
  EXPOSE 7860
24
 
25
  # Run the FastAPI app using uvicorn
26
+ CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860", "--proxy-headers"]
27
 
faq_routes.py CHANGED
@@ -54,13 +54,12 @@ user_question_count = load_question_log()
54
  def get_client_ip(request: Request) -> str:
55
  x_forwarded_for = request.headers.get("x-forwarded-for")
56
  if x_forwarded_for:
57
- # Get the first IP in the list
58
- ip = x_forwarded_for.split(",")[0].strip()
59
- elif request.client:
60
- ip = request.client.host
61
- else:
62
- ip = "unknown"
63
- return ip
64
 
65
  @router.post("/ask")
66
  async def ask_faq(request: QuestionRequest, http_request: Request):
 
54
  def get_client_ip(request: Request) -> str:
55
  x_forwarded_for = request.headers.get("x-forwarded-for")
56
  if x_forwarded_for:
57
+ return x_forwarded_for.split(",")[0].strip()
58
+ elif request.client and request.client.host:
59
+ return request.client.host
60
+
61
+ # Raise error if no IP found
62
+ raise HTTPException(status_code=400, detail="Unable to determine client IP address.")
 
63
 
64
  @router.post("/ask")
65
  async def ask_faq(request: QuestionRequest, http_request: Request):