Puncte:0

Passenger Apache - Interzis Nu aveți permisiunea de a accesa această resursă

drapel vu

sunt blocat cu Apache cu Pasager configurație. Am petrecut câteva zile căutând o soluție. Urmează aceste instrucțiuni. Primesc acest mesaj în browser:

Interzis

Nu aveți permisiunea de a accesa această resursă.

httpd.conf

# Utilizați implicit /usr/bin/node.
PassengerNodejs /usr/bin/node

<VirtualHost *:80>

    ServerName example.com

    RewriteEngine Pornit 
    RewriteCond %{HTTPS} off
    RewriteCond %{SERVER_NAME} =example.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

<VirtualHost *:443>

    ServerName example.com

    # Spuneți lui Apache și Passenger unde se află directorul de cod al aplicației dvs
        DocumentRoot /var/www/example.com
        PassengerAppRoot /var/www/example.com/

    # Spune-i lui Passenger că aplicația ta este o aplicație Node.js
        Nodul PassengerAppType
        PassengerStartupFile app.js

    # Relaxați setările de securitate Apache
    <Director /var/www/example.com>
        Opțiuni FollowSymLinks
        AllowOverride Nici unul
        Comanda permite, refuza
        Permite de la toți
        Opțiuni -MultiViews
        # Anulați comentariul dacă sunteți pe Apache >= 2.4:
        Solicitați toate acordate
    </Director>

    CustomLog /var/log/httpd/example.com_access.log combinat
    ErrorLog /var/log/httpd/example.com_error.log

    SSLEngine activat
    SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/example.com/fullchain.pem
    Includeți /etc/letsencrypt/options-ssl-apache.conf

</VirtualHost>

În /var/log/httpd/example.com_error.log primesc:

[Sam Sep 04 07:24:00.473120 2021] [autoindex:error] [pid 907862:tid 139932467173120] [client 85.89.184.79:50337] AH012762:tid 139932467173120] [client 85.89.184.79:50337] AH012762:tid 139932467173120 index.html,index.php) găsit și indexul directorului generat de server interzis de directiva Opțiuni

Drepturi la fișier

drwxr-xr-x. 5 rădăcină rădăcină 102 3 septembrie 23:53 ..
drwxr-xr-x. 8 root root 163 Sep 4 07:11 .git
-rw-r--r--. 1 root root 35 Sep 4 07:11 .gitignore
-rw-r--r--. 1 root root 215 Sep 4 07:11 README.md
-rw-r--r--. 1 root root 390 4 septembrie 07:11 app.js
drwxr-xr-x. 3 root root 21 sep 4 07:12 node_modules
-rw-r--r--. 1 rădăcină rădăcină 2655 4 septembrie 07:12 npm-shrinkwrap.json
-rw-r--r--. 1 root root 318 4 septembrie 07:11 package.json
drwxr-xr-x. 2 root root 22 sep 4 07:11 public

curl http://127.0.0.1:3000/ returnează Salut de la Node.js/io.js + Connect.js!

Ar trebui să verific ceva?

Puncte:0
drapel in

Această eroare înseamnă că nu există un fișier index implicit în director și acesta este în mod clar cazul dvs. având în vedere lista de fișiere pe care ați menționat-o.

Soluţie:

  1. Creați o pagină index.html goală în directorul dvs. public.

    atingeți /var/www/example.com/index.html
    
  2. Modificați directiva de opțiuni în interiorul httpd.conf și adăugați indecși:

    Opțiuni -MultiViews -Indexuri
    
  3. Reporniți/reîncărcați httpd

    serviciu httpd reîncărcare
    

Editați | ×:

Privind din nou la httpd.conf, se pare că nu ați indicat DocumentRoot unde este directorul dvs. public. Prin urmare:

  1. Înlocuiți documentul actual în /var/www/example.com/public:
DocumentRoot /var/www/example.com/public
  1. Schimbați și calea directorului la aceeași cale:
<Directory /var/www/example.com/public>

Pentru mai multe informații, consultați Site-ul pentru pasageri

neuroine avatar
drapel vu
Multumesc pentru raspuns. Fișierele `index.html` funcționează bine, dar Passenger rulează aplicația nod din fișierul `app.js`.
neuroine avatar
drapel vu
Multumesc pentru urmatoarele sugestii. Din păcate, nu este asta. Cred că problema poate fi rezolvată cu drepturile de utilizator. Când `curl http://127.0.0.1:3000/` de pe server primesc conținutul paginii, dar când curl folosind domeniul `http://example.com/` primesc **403 Interzis**.
djdomi avatar
drapel za
@neuroine bine, aveți nevoie de un proxy invers în acest caz, nu de un folder rădăcină

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.