我如何在 IIS Web 服务器中托管 React 应用程序?
how can i host react app in IIS web server?
如何在 IIS 网络服务器中托管 reactjs
应用程序?
我使用 npm run build
并将文件替换到服务器中并创建引用这些文件的新站点。
我还使用 * 符号将所有 IP 绑定到端口 80。
但没有用。
在我们运行下面的命令之后,输出将在项目中创建一个名为“build”的新文件夹,其中包含生产构建。我们可以通过将这些文件复制到 IIS 网站的根目录来托管项目,网站根文件夹应该可以被匿名帐户正常访问,因此如果不是,我们应该授予 IUSR 帐户对该文件夹的完全访问权限默认网站。
在IIS绑定模块中添加网站绑定后,
我们可以使用以下地址正常访问该网站。
http://localhost
此外,如果我们在 React 应用程序中添加某些路由功能(多个组件),我们必须安装 IIS URL Rewrite 扩展。
https://www.iis.net/downloads/microsoft/url-rewrite
安装成功后,我们需要在IIS网站的根目录下创建一个包含以下内容的web.config文件
<?xml version="1.0"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="React Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
如果问题仍然存在,请随时告诉我。
如何在 IIS 网络服务器中托管 reactjs
应用程序?
我使用 npm run build
并将文件替换到服务器中并创建引用这些文件的新站点。
我还使用 * 符号将所有 IP 绑定到端口 80。 但没有用。
在我们运行下面的命令之后,输出将在项目中创建一个名为“build”的新文件夹,其中包含生产构建。我们可以通过将这些文件复制到 IIS 网站的根目录来托管项目,网站根文件夹应该可以被匿名帐户正常访问,因此如果不是,我们应该授予 IUSR 帐户对该文件夹的完全访问权限默认网站。
在IIS绑定模块中添加网站绑定后,
我们可以使用以下地址正常访问该网站。
http://localhost
此外,如果我们在 React 应用程序中添加某些路由功能(多个组件),我们必须安装 IIS URL Rewrite 扩展。
https://www.iis.net/downloads/microsoft/url-rewrite
安装成功后,我们需要在IIS网站的根目录下创建一个包含以下内容的web.config文件
<?xml version="1.0"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="React Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
如果问题仍然存在,请随时告诉我。