我有一个 Linux 网站,数据一直正确加载到页面,直到我开始使用 chmod 权限更改。我正在进行更改,因为我使用的 js 脚本无法上传和裁剪图像,我想这可能是图像文件夹中的权限问题。
无论如何...
更改权限后,数据行不再出现,但是,我确实知道与数据库的连接有效,因为页面的另一部分中出现了一些用户名数据。
我将文件夹的所有内容更改回 755,将文件的内容更改回 644,数据行不再出现。
令人惊奇的是,完全相同的文件在我在 Windows 10 PC 上运行的本地主机服务器上运行良好。数据库也完全相同。
有人知道我做错了什么吗?我已确认本地主机服务器上的文件与网站上的文件完全匹配,并且两台服务器的连接将连接到同一个 MySQL 数据库。
我真的被这个问题难住了。
谢谢
最佳答案
这是一个 Linux/Apache/Nginx 问题,而不是标记的 Javascript/PHP/MySQL 问题。
Apache2 和 Nginx 都以特定用户身份运行。当前Apache2的默认用户是www-data,它是www-data组的成员。如果更改权限以禁止该用户访问文件,Apache 将无法为这些文件提供服务。
您应该确保您的网络服务器正在使用的用户(或其组之一)可以读取所有资源。
还值得注意的是,MySQL 数据库的权限与 Apache2/Nginx 文件系统的权限不同。能够访问数据库数据并不意味着您的服务器的文件系统权限是正确的。
我还建议您使用 Chrome 的检查器来检查您的资源是否正在加载;并检查您的网络服务器日志以查看弹出的错误。
关于javascript - CHMOD 更改会影响加载到页面的数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797026/