have problem with install on vm
-
@dark-shy said in have problem with install on vm:
Nginx part of log:
root@darkshy:/etc/nginx# root@darkshy:/etc/nginx# nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()You are trying to start nginx when it is already running. Hence port 80 is already in use. Please drive the following commands:
systemctl restart nginx systemctl status nginx nginx -t
Those should confirm that nginx is running fine.
nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
From your paste below, seems like maybe NodeBB is not configured 100% correctly? I did not notice anything amiss in your nginx conf posted above. Is that your entire conf file? And/or something amiss with your nodebb config/installation? Warnings are survivable. Errors may not be. You have a couple where modules are not found:
2021-03-06T11:24:03.851Z [4567/1511] - error: Error: Cannot find module '/var/www/html/node_modules/nodebb-plugin-soundpack-default' ........ 2021-03-06T11:24:03.929Z [4567/1511] - error: Error: Cannot find module './categories' ............ 2021-03-06T11:24:03.936Z [4567/1511] - error: Error: Cannot find module './user' ............. 2021-03-06T11:24:03.997Z [4567/1511] - error: [plugins/spam-be-gone] Honeypot API Key not set! ............ 2021-03-06T11:24:04.151Z [4567/1511] - error: [plugins/spam-be-gone] Unable to verify Akismet API key.
If you don't have those API keys then those bits should be disabled. In ACP/plugins/spam-be-gone:
Uncheck Akismet and Project Honeypot boxes.
I'll leave pitaj to comment on the modules errors.
Howesomever: That you receive a response to a curl on the localhost indicates your server is indeed serving up some html - at least locally. So the issue is something amiss with access from your external IP address. Your lsof output indicates your server is listening on port 80 on all network interfaces. So maybe a firewall issue - or maybe cloudflare. We still do not have any nginx log files.
If you tail your nginx access log and then attempt to access your site from an external source (i.e. not local LAN) then you should see that in your nginx logs. If not, then you have an issue upstream from somewhere.
If so, then mayhaps you have something wrong with your DNS records:
drill cp.slainscraft.com ;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 23888 ;; flags: qr rd ra ; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;; cp.slainscraft.com. IN A ;; ANSWER SECTION: cp.slainscraft.com. 300 IN A 104.21.4.78 cp.slainscraft.com. 300 IN A 172.67.131.203 ;; AUTHORITY SECTION: ;; ADDITIONAL SECTION: ;; Query time: 67 msec ;; SERVER: 192.168.27.1 ;; WHEN: Sat Mar 6 07:18:54 2021 ;; MSG SIZE rcvd: 68
Are you/cloudflare really serving up your stuff on both of those A record addresses above? I don't use Cloudflare but IF nginx logs indicate you are able to access your box from non local lan addresses, then there is something wrong w/your fw, upstream Cloudflare, and/or DNS configuration.
Hope this helps you get it sorted. Good luck! o/
-
@dark-shy okay so it looks like nginx is binding on port 80, and you're getting a response from NodeBB there, so it must be something like a firewall preventing access from the outside. You mentioned cloudflare, could you try disabling that?
-
@dark-shy as for the startup logs, you have a few plugins that aren't compatible with your version of NodeBB. Try disabling them for now
-
@pitaj disable CloudFlare-it will not work, since I have all the dns running through it. In it, I have all the settings for this domain.
@gotwf said in have problem with install on vm:
2021-03-06T11:24:03.929Z [4567/1511] - error: Error: Cannot find module './categories'
............
2021-03-06T11:24:03.936Z [4567/1511] - error: Error: Cannot find module './user'
i dont know how fix it.
-
@dark-shy the fix is to update those plugins so they use
require.main.require('./src/user')
instead ofmodule.parent.require('./user')
. But if you aren't the developer of those plugins, there's nothing you can do, so just disable them or ignore the errors for now. They aren't causing the issue.Since you can access NodeBB on
http://localhost:4567
, this means NodeBB is running.Since you can access NodeBB on
http://localhost:80
, this means that nginx is (at least partially) working.Since you cannot access NodeBB on
http://your.ip:80
, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup? -
@pitaj said in have problem with install on vm:
Since you cannot access NodeBB on http://your.ip:80, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup?
by external address-works from the external network, and from the internal network does not work at the external address.
from the device 192.168.1.101, it is not possible to connect to 93.95.167.101:80/4567, although it is safe to connect to 192.168.1.103:80/4567. Localhost also works -
@pitaj said in have problem with install on vm:
@dark-shy the fix is to update those plugins so they use
require.main.require('./src/user')
instead of
Since you cannot access NodeBB onhttp://your.ip:80
, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup?Ah, wait, have we established this? Nginx tail I missed?
Freakin' snap! Eyes missed this bit from the opening post. Sigh...
there is no response - 93.95.167.101.
And I was even looking for it too, earlier when I did those other telnet test. Ho, man!!!
telnet 93.95.167.101 80 Trying 93.95.167.101... ^C
Above confirms that your external IP address is not accessible, at least not by general public. Perchance do you have a firewall rule restricting access to only Cloudflare servers?? If not and all incoming requests to port 80 are blocked then we have just pinpointed the problem because if I nor Cloudflare cannot get there... then the proof is pretty much in the pudding that you have a fw rule issue.
Mind you, you could still additionally have a Cloudflare issue on top of that, but you got to work your way back upstream one link at a time.
Pitaj very efficiently cut to the chase. I was trying to also teach you how to fish. Hope that helps somebody on down the line.
Good luck and have fun. Methinks you are almost there. o/
-
@dark-shy if it's working on
http://localhost:80
then it's likely not an nginx problem given your config. You can runlsof -n -i:80
to make sure, you should see nginx there. -
@pitaj said in have problem with install on vm:
if it's working on http://localhost:80 then it's likely not an nginx problem given your config. You can run lsof -n -i:80 to make sure, you should see nginx there.
I was write this command. And take nothing.
server { listen 80; server_name forum.slainscraft.com; root /var/www/html; index index.php index.html index.htm; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://localhost:4567; proxy_redirect off; # Socket.IO Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }
-
@dark-shy You got it coming out, nice!
Do you see any errors in the browser developer console?
-
@dark-shy maybe it's just because you don't have any traffic yet. Is any other functionality broken?
-
@nhl-pl said in have problem with install on vm:
You can also try to replace localhost with 127.0.0.1:4567.
proxy_pass http://localhost:4567;Good catch.
Should work with localhost but I also prefer to be explicit and specify localhost via IP address. Of course those nginx log tails would have pointed us thusly a long ways back. Checking log files for errors and warnings are step one in troubleshooting 101.
-
I started looking for a solution to the problem and as one of the solutions, I decided to reinstall, so now it does not work at all on the domain, the situation is as it was, on 93.95.167.101: 4567-it works, on 192.168.1.*: 4567-it works, but with the domain-again some crap.
server { listen 80; server_name forum.slainscraft.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://localhost:4567; proxy_redirect off; # Socket.IO Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }
Dev-log:
https://pastebin.com/wMUnkgCS -
@dark-shy so
your-domain.invalid:4567
doesn't work? -
@dark-shy if
your-ip:4567
works butyour-domain:4567
doesn't work, them you have a DNS issue. Your domain isn't correctly pointing to your ip.