Selamat siang.
Meskipun posting ini membahas pengaturan serupa untuk menambang melayani halaman kosong sesekali setelah melakukan instalasi yang berhasil, saya tidak dapat menayangkan apa pun selain halaman kosong. Tidak ada kesalahan /var/log/nginx/error.log
, /var/log/php-fpm.log
atau /var/log/nginx/us/sharonrhodes/blog/error.log
.
Pengaturan saya:
- Wordpress 3.0.4
- nginx 0.8.54
- php-fpm 5.3.5 (fpm-fcgi)
- Arch Linux
File Konfigurasi
php-fpm.conf:
[global] pid = run / php-fpm / php-fpm.pid error_log = log / php-fpm.log log_level = pemberitahuan [www] dengarkan = 127.0.0.1:9000 listen.owner = www listen.group = www listen.mode = 0660 pengguna = www grup = www pm = dinamis pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500
nginx.conf:
pengguna www; proses pekerja_ 1; pemberitahuan error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; acara { koneksi pekerja_1024; } http { termasuk mime.types; default_type application / octet-stream; sendfile aktif; keepalive_timeout 65; gzip aktif; termasuk /etc/nginx/sites-enabled/*.conf; }
/etc/nginx/sites-enabled/blog_sharonrhodes_us.conf:
upstream php { server 127.0.0.1:9000; } server { pemberitahuan error_log /var/log/nginx/us/sharonrhodes/blog/error.log; access_log /var/log/nginx/us/sharonrhodes/blog/access.log; server_name blog.sharonrhodes.us; root / srv / apps / us / sharonrhodes / blog; index index.php; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { perbolehkan semua; log_not_found off; access_log off; } lokasi / { # Ini keren karena tidak ada php yang disentuh untuk konten statis try_files $ uri $ uri / /index.php?q=$uri&$args; } lokasi ~ \ .php $ { fastcgi_split_path_info ^ (. + \. php) (/.+) $; #CATATAN: Anda harus memiliki "cgi.fix_pathinfo = 0;" di php.ini termasuk fastcgi_params; fastcgi_intercept_errors aktif; fastcgi_pass php; } lokasi ~ * \. (js | css | png | jpg | jpeg | gif | ico) $ { kedaluwarsa maks; log_not_found off; } }
/etc/nginx/conf/fastcgi.conf:
fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; fastcgi_param QUERY_STRING $ query_string; fastcgi_param REQUEST_METHOD $ request_method; fastcgi_param CONTENT_TYPE $ content_type; fastcgi_param CONTENT_LENGTH $ content_length; fastcgi_param SCRIPT_NAME $ fastcgi_script_name; fastcgi_param REQUEST_URI $ request_uri; fastcgi_param DOCUMENT_URI $ document_uri; fastcgi_param DOCUMENT_ROOT $ document_root; fastcgi_param SERVER_PROTOCOL $ server_protocol; fastcgi_param GATEWAY_INTERFACE CGI / 1.1; fastcgi_param SERVER_SOFTWARE nginx / $ nginx_version; fastcgi_param REMOTE_ADDR $ remote_addr; fastcgi_param REMOTE_PORT $ remote_port; fastcgi_param SERVER_ADDR $ server_addr; fastcgi_param SERVER_PORT $ server_port; fastcgi_param SERVER_NAME $ server_name; # Hanya PHP, diperlukan jika PHP dibangun dengan --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200;
nginx
wordpress
php-fpm
arch-linux
ikan troutwine
sumber
sumber
Jawaban:
Secara default, sumber Nginx tidak mendefinisikan SCRIPT_FILENAME dalam file fastcgi_params, jadi kecuali jika repo tempat Anda menginstal Nginx, Anda perlu melakukannya sendiri.
Periksa apakah baris berikut ada di file fastcgi_params Anda:
dan jika tidak maka tambahkan.
sumber
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
mendefinisikan tepat di bagian atas/etc/nginx/conf/fastcgi.conf
. Saya akan mengedit posting asli untuk mencerminkan ini.Yang ini hanya sedikit saya- dan itu sepenuhnya salah saya. Saya ingin membagikan apa yang memperbaiki saya. Dalam kasus saya, index.php tidak memuat (halaman kosong) tetapi wp-admin berfungsi.
Saya memiliki tema khusus dan saya baru saja bermigrasi dari akun hosting bersama ke VPS. Saya melakukan rsync dan tema saya (/srv/blog.clifton.io/wp-content/themes/theme-here) adalah symlink. Tentu saja symlink ini rusak karena menggunakan jalur dari akun hosting saya sebelumnya.
Semoga ini membantu! (dan berharap itu akan mencatat "TEMA TIDAK DITEMUKAN" atau serupa)
sumber