reactjs - 如何在 goDaddy 上修复 reactJS 的白屏
问题描述
我正在尝试将反应应用程序部署到 Godaddy 托管网站。该网站可以在mattdambra.com找到,存储库位于github.com//superrmatt/react-portfolio。
我遇到的问题是,当运行 npm start 时,该应用程序在我的 PC、手机、其他人的 PC 等上运行良好。但只是在godaddy网站上显示一个白屏。我得到以下控制台语句: 我已将构建文件放入 cpanel/godaddy 的 /public/html 中。
如果不是一个多星期,我已经在这几天了。我已经逐个搜索了所有内容,并查看了可以在网上找到的所有内容,但无济于事。我为其他人看到的最常见的解决方案似乎是将homepage
in更改package.json
为"."
. 但是,这对我的情况没有任何影响。
包.json:
{
"homepage": "http://mattdambra.com/mattdambra-react/",
"name": "mattdambra-react",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"create-react-class": "^15.6.3",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"react-pdf": "^4.1.0",
"react-perf-devtool": "^3.1.8",
"react-router-dom": "^5.1.2",
"react-scripts": "3.4.1",
"react-scroll": "^1.7.16",
"react-social-badge": "^1.0.6"
},
"engines": {
"node": "12.13.0",
"npm": "6.12.0"
},
"scripts": {
"predeploy": "npm run build",
"deploy": "gh-pages -d build",
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"prettier": "2.0.4",
"gh-pages": "^2.2.0"
}
}
.ht 访问:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . /index.html [L]
</IfModule>
不太清楚我在用 .htaccess 做什么,这是我从教程中得到的一个示例,它的措辞使它看起来对任何事情都有好处。正如您将在下面阅读的那样,自学成才,并且仍在学习/弄清楚。让我知道是否需要或想要什么。我的反应知识几乎完全是自学的,所以我可能没有按照惯例做事,甚至根本不正确!任何帮助将不胜感激。
------------更新--------- 在对我的 .htaccess 文件(见下文)实施了一些更改后,我现在收到许多与特定文件相关的 404 错误(再次,见下文),但是,该网站仍然加载一个空白屏幕。
新的.htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
解决方案
推荐阅读
- python - 如何使用 .filter()/.get() 查看值是否在外部模型中以在 Django 中进行验证?
- ios - iOS 开发者 ID 证书
- angular - 我如何在点击事件中调用一个函数
零件? - entity-framework - 实体框架维护多个插入的外键
- controller - 错误:未知属性,Visualforce 自定义控制器
- asp.net-core - 如何使用 2 个 .Include<> 方法关联 3 个表
- c# - C#获取USB驱动器的序列号
- php - 简单的 html dom 解析器查找文本
- azure - Azure Dev-ops Pipeline - 有条件地执行任务
- python - 无法打印字符串匹配模式