首页 > 解决方案 > 如何将端口 8080、8000 上的调用重写为端口 80

问题描述

我制作了一个用于现有软件的 api。该软件名为 iptv-smarters,它的作用是连接到一个 api 并获取一些信息。iptv-smarters 的默认端口似乎是 8080 或 8000。我在共享主机上运行我的 api,我想在端口 8080 或 8000 上捕获对 api 的调用并将它们重定向到端口 80。

我已经阅读了有关使用 modrewrite 重写端口的信息,但是对于所有请求,包括端口 80 上的默认值,我都得到了 404。我还将对子域的调用重写为另一个子域中的脚本 - 所以我可以使用子域作为客户端 ID。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^([-a-zA-Z0-9]+)\.iptv-manager\.info$ [NC]
RewriteRule ^((?!index\.php$).*)$ http://player-api.iptv- 
manager.info/index.php?subdomain=%1&route=$1 [QSA,P]

我试过这样做:

RewriteEngine On
RewriteCond  %{SERVER_PORT} !^80$ 
RewriteRule ^(.*) http://%{SERVER_NAME}:80%{REQUEST_URI} 
RewriteCond %{HTTP_HOST} ^([-a-zA-Z0-9]+)\.iptv-manager\.info$ [NC]
RewriteRule ^((?!index\.php$).*)$ http://player-api.iptv- 
manager.info/index.php?subdomain=%1&route=$1 [QSA,P]`

但我无法让它工作 -

标签: apache.htaccessmod-rewriteport

解决方案


推荐阅读