xpf0000 / PhpWebStudy

Powerful Web and PHP Development Environment. Support both macOS and windows
https://www.macphpstudy.com
BSD 3-Clause "New" or "Revised" License
519 stars 42 forks source link

Need Node #80

Closed imyellow closed 1 month ago

imyellow commented 3 months ago

请问需要安装哪个Node版本才可以,启动服务时一直提示 Need Node,并且文件权限无法访问(目录已经sudo chmod -R 755),

Snipaste_2024-04-01_13-17-34 image
xpf0000 commented 3 months ago

Need Node 是 DNS功能需要的. 如果不使用DNS 功能. 设置里隐藏 DNS. 如果使用, 需要系统里安装 nodejs. node14以上都行.

站点文件夹不要放到系统目录. 放到桌面/下载/文稿等用户的文件夹. 文件夹权限不单单需要站点文件夹有权限. 还需要上层文件夹也有权限. 不需要手动执行 chmod. 创建站点时, 文件夹权限已自动处理过了.

imyellow commented 3 months ago

Need Node 是 DNS功能需要的. 如果不使用DNS 功能. 设置里隐藏 DNS. 如果使用, 需要系统里安装 nodejs. node14以上都行.

站点文件夹不要放到系统目录. 放到桌面/下载/文稿等用户的文件夹. 文件夹权限不单单需要站点文件夹有权限. 还需要上层文件夹也有权限. 不需要手动执行 chmod. 创建站点时, 文件夹权限已自动处理过了.

你好,感谢回复。

node系统有装的,版本16-20都切换过了,依旧不行。

文件夹在文稿的一个目录里,文稿在我自己当前的用户名下的,我也在设置里的 隐私与安全性 给PhpWebStudy赋予了完全磁盘访问权限,项目运行目录上层以及上上层都手动执行了 sudo chmod -R 755,站点也删除重新建立过,但依旧提示无权限。 是否需要给某个应用授权完全磁盘访问?

image image image
xpf0000 commented 3 months ago

程序里检测 node 环境的代码:

[ -s "$HOME/.bash_profile" ] && source "$HOME/.bash_profile";[ -s "$HOME/.zshrc" ] && source "$HOME/.zshrc";

如果你的node环境变量不在 ~/.bash_profile 或者 ~/.zshrc 这两个文件里, 或者从这两个文件, 无法获取到 node 环境. 就会识别失败.

网站访问, PhpWebStudy不需要完全磁盘访问权限. 因为最终处理网站请求的是 apache/nginx/caddy. 先看下这几个的配置文件, 是否在配置文件里改过 user/group 等.

也可以考虑使用标准的80/443端口. 使用.com 域名再试下.

nginx的默认配置文件貌似自带 localhost, 可以试下屏蔽了再试下

imyellow commented 3 months ago

我用的是 Apache,配置文件里只改了 DocumentRoot 参数,其他没改动过。 我新增了一个.com的域名,更改了端口号,情况一样,提示 you don't have permission to access this resource.Server unable to read htaccess file, denying access to be safe 另外该目录用MAMP的Apache可以正常跑起来运行。

我再次检查了配置,没有问题,~/.zshrc 里有对应的PATH,目录里也有node在,终端运行node也没有问题。

image
xpf0000 commented 3 months ago

你用的应该是系统自带的 apache吧. 位置在 /usr/sbin/httpd. 系统自带的 apache, 需要设置完全磁盘访问权限.

使用 homebrew/macports 安装的 apache 没有这个问题

node 的问题, 后续再看下