簡體   English   中英

Apache vHost和API“漂亮的網址”獲得404

[英]Apache vHost and API “pretty url” getting 404

我有一個REST API,以前在我的localhost上有url,看起來像:

本地主機/ API / V1 /收集/資源

當我在本地處理API和Web應用程序時,我實現了apache虛擬主機以獲取以下API:

api.mydomain.com/v1/collection/resource

我有一個前置控制器,我正在路由呼叫。 api.mydomain.com成功點擊前端控制器。 api.mydomain.com/v1列出了目錄(所有的php文件),這是一個問題,而api.mydomain.com/collection/resource會產生404。

我的目錄結構是:

/api
  /v1
    php files 
.htaccess 
Router.php 
index.php

.htaccess包含:

RewriteEngine On
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

我不太清楚問題出在哪里。 api.mydomain.com以外的任何東西似乎都繞過了命中index.php。 我不太熟悉這些重寫,所以任何見解都值得贊賞。

嘗試這個

 RewriteEngine On
 RewriteBase /
 RewriteCond %{HTTP_HOST} ^api.mydomain.com$ [NC]
 RewriteRule ^(.*)$ index.php [R=301,NC,L]

發現了這個問題。 當我創建vHosts時,我復制了一個不正確的AllowOverride None設置,這使得我的htaccess文件無效。 在關聯的vHost目錄下更改為AllowOverride All可解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM