我在网上搜索了有关如何在Microsoft IIS上部署React App的解决方案的信息。
我已经成功地部署了多个Node.JS应用程序,但是React却没有运气。
我尝试过的事情:
已安装URL Rewrite
我跑了:npm i -g create-react-app
我创建了一个基本的React应用:create-react-app my-app
我在web.config
路由中创建了一个名为./public
的文件
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>
npm run build
new website
和应用程序池:DefaultAppPool
,该路径链接到./build
文件夹目录。Site can't be reached
错误。 还有其他人试图在IIS上进行部署吗?
我还尝试了以下资源: -https://github.com/react-boilerplate/react-boilerplate/issues/711 -https://www.quora.com/How-can-one-host-ReactJS-in-IIS -https://hackernoon.com/adding-web-config-to-react-projects-3eb762dbe01f
答案 0 :(得分:6)
我只是尝试了一下,并且有效:
create-react-app myapp
纱线(或npm)构建
如果这不起作用,则可能需要启用对文件的读/写访问,因此右键单击网站并选择编辑权限
转到“安全性”并点击“编辑”, 选择经过身份验证的用户,然后在对话框底部,在适当的地方选中修改/完全控制/读/写框。对应该在“组或用户名”部分下列出的Windows用户执行相同的操作。点击“应用/保存”。
右键单击该网站,然后转到“管理网站”,然后浏览。
景气。