我正在使用一个总是运行Apache Web服务器的共享托管服务,因此我无法直接在端口80上运行我的Node.js应用程序。相反,正如我的主机告诉我的,我需要使用.htaccess
来将传入的请求重定向到我的Node.js应用程序,该应用程序当前正在端口50000上运行。这是他们告诉我使用的.htaccess
文件:
RewriteEngine On
RewriteRule ^$ http://127.0.0.1:50000 [P,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:50000/$1 [P,L]
这很好用,除了当我尝试去mydomain.com
时,Node应用程序正在查看/index.php
的请求。对我的主人的技术支持似乎和我一样困惑。如果我去mydomain.com/test
然后Node.js应用程序看到/test
,所以Apache似乎只在根URL上添加index.php
。这可能是在.htaccess
文件和Node.js应用程序设置之前访问URL的人的Apache缓存问题吗?
UPDATE
在这一点上,似乎没有人知道发生了什么,所以我只是要添加一个'index.php'路由到我的Node应用程序。感谢所有看过并试图帮助的人。
您可能在DirectoryIndex
文件中为index.php
设置了apache conf
,这可能是您自动获取index.php
的原因,您可以做的是将DirectoryIndex
设置为某些可能不存在的文件名,或者如果它是apache 2.4在DirectoryIndex disabled
中使用.htaccess
。