Proxyreverse di Apache2 dengan wordpress

Oct 04 2020

Saya telah menginstal dan mengkonfigurasi Wordpress di server saya menggunakan juga apach2 virtualhosts. Saya membuat virtualhost dengan konfigurasi ini

<VirtualHost *:80 *:443>

    ServerAdmin [email protected]
    ServerName yourluxuryroad.com
    ServerAlias www.yourluxuryroad.com
    DocumentRoot /var/www/yourluxuryroad
    ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined

    RewriteEngine on
    RewriteCond %{SERVER_NAME} =www.yourluxuryroad.com [OR]
    RewriteCond %{SERVER_NAME} =yourluxuryroad.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

    ProxyPreserveHost On
    ProxyRequests Off
    ProxyPass /node-yrl-book http://localhost:5000
    ProxyPassReverse /node-yrl-book http://localhost:5000

</VirtualHost>

<Directory /var/www/yourluxuryroad/>
    AllowOverride All
</Directory>


Seperti yang Anda lihat dari konfigurasi, saya mencoba mengatur direktif ProxyPass untuk mengalihkan permintaan yang diterima di jalur /node-yrl-bookke nodejslayanan (dibuat menggunakan expressjs) di port 5000 tetapi ini tidak berfungsi, alih-alih mendapatkan pengalihan ke layanan itu saya dapatkan 404 Halaman tidak ditemukan halaman wordpress.

Jika saya membuat permintaan di my_ip/node-yrl-bookmalah berfungsi dengan benar dan saya dialihkan ke layanan di port: 5000

Saya kira saya melewatkan sesuatu dalam konfigurasi saya tetapi saya tidak mengerti apa .. Mungkin ada sesuatu di wordpress yang harus diubah?

Jawaban

jnovack Oct 04 2020 at 17:37

Terlalu banyak hal yang terjadi.

ProxyPass-atau- DocumentRoot, tidak keduanya.

Anda dapat menyajikan halaman dari apache (dengan menggunakan DocumentRoot), atau Anda dapat melayani halaman dari nodejs (dengan menggunakan ProxyPass).

Mat.C Oct 04 2020 at 20:11

Akhirnya saya menyelesaikan ini, saya membuat sertifikat SSL untuk situs web saya menggunakan mari enkripsi certbot, Skrip ini membuat virtualhost baru di file lain untuk permintaan https (disebut /etc/apache2/sites-available/myDomain-le-ssl.conf) Virtualhost itu menimpa arahan proxypass saya, juga mengedit virtualhost ini membuat semuanya berfungsi