Saya memiliki blog wordpress yang dilayani oleh apache2 (pada port 80) dan nginx (pada port 8080) di Ubuntu 12.04. Sekarang setiap kali klien terhubung melalui port 80 semua keren, tetapi ketika klien terhubung ke 8080 untuk melihat blog yang sama, koneksi dialihkan ke apache. Mengapa ini terjadi? Saya mencari-cari dan menemukan bahwa ini adalah batasan Wordpress yang mengalihkan semua koneksi ke URL situs yang ditetapkan di dasbor (yang merupakan port 80 secara default).
Apakah ada jalan keluarnya? bahwa koneksi ke port 8080 akan dilayani oleh nginx daripada apache
Isi dari / etc / nginx / situs-enabled / wordpress
server {
listen 8080;
root /var/www;
index index.php index.html index.htm;
server_name abc.com;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SERVER_PORT 8080;
port_in_redirect off;
}
Bantuan apa pun dihargai.
Jawaban:
Saya menyelesaikannya !! begini caranya:
Edit tema Anda saat ini
functions.php
dan tambahkan baris berikut setelah tag PHP pembuka untuk menonaktifkan pengalihan kanonik.remove_filter('template_redirect','redirect_canonical');
Simpan dan keluar.Mulai ulang apache2 dan nginx dan periksa
curl -I IP
.sumber
Permasalahan yang sama. Dalam situasi saya, saya mengatur port server di
3030
, untuk mengakomodasi server lain. Bagaimanapun, tanpa harus menambahkan kode apa pun kefunctions.php
file apa pun , saya memecahkan masalah dengan mengubah nilai situs dan rumah diwp_options
tabel ke domain dan pengaturan port.Sebagai contoh,
Segalanya tampak bekerja dengan baik dari sana. 👍
sumber