Nginx Tidak Masuk https /: 443 Permintaan


3

Saya sedang dalam proses mencoba mengkonfigurasi Server dengan https dan untuk beberapa alasan tampaknya permintaan tidak memukul nginx sama sekali. Saya memiliki semuanya berfungsi dengan baik tetapi begitu saya pergi untuk mengaktifkan ssl itu memberi saya tidak akan menerima permintaan apa pun pada port 443 (batas waktu koneksi). Adakah yang tahu bagaimana saya bisa mulai men-debug masalah ini? Saya menggunakan semua logika yang sama yang saya gunakan di server sebelumnya.

Nginx.conf:

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    port_in_redirect off;
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

domain.conf di conf.d:

   server {
  listen 80;      
  server_name domain.com;
  location / {
    rewrite ^ https://$server_name$request_uri? permanent;   
  }
}                  

server {         
  listen 443; 
  server_name domain.com;
  root /var/www/;
  ssl on;
  ssl_certificate /etc/ssl/domain.com.combinded.crt;
  ssl_certificate_key /etc/ssl/domain.com.key;
  index index.html index.htm index.php;


  location / {
    try_files $uri $uri/ /index.php?q=$uri&$args;
  }

  location ~ \.php$ {
    fastcgi_intercept_errors on;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unix:/dev/shm/php-fpm-www.sock;
  }

  # BEGIN W3TC Page Cache cache
  location ~ /wp-content/w3tc/pgcache.*html$ {
    add_header Vary "Accept-Encoding, Cookie";
  }
  location ~ /wp-content/w3tc/pgcache.*gzip$ {
    gzip off;
    types {}
    default_type text/html;
    add_header Vary "Accept-Encoding, Cookie";
    add_header Content-Encoding gzip;
  }
  # END W3TC Page Cache cache
  # BEGIN W3TC Browser Cache
  gzip on;
  gzip_types text/css application/x-javascript text/x-component text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
  location ~ \.(css|js|htc)$ {
  }
  location ~ \.(html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml)$ {
  }
  location ~ \.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|xla|xls|xlsx|xlt|xlw|zip)$ {
  }
  # END W3TC Browser Cache
  # BEGIN W3TC Page Cache core
  rewrite ^(.*\/)?w3tc_rewrite_test$ $1?w3tc_rewrite_test=1 last;
  set $w3tc_rewrite 1;
  if ($request_method = POST) {
    set $w3tc_rewrite 0;
  }
  if ($query_string != "") {
    set $w3tc_rewrite 0;
  }
  if ($http_host !~ "XX.XXX.XX.XX") {
    set $w3tc_rewrite 0;
  }
  set $w3tc_rewrite3 1;
  if ($request_uri ~* "(\/wp-admin\/|\/xmlrpc.php|\/wp-(app|cron|login|register|mail)\.php|\/feed\/|wp-.*\.php|index\.php)") {
    set $w3tc_rewrite3 0;
  }
  if ($request_uri ~* "(wp\-comments\-popup\.php|wp\-links\-opml\.php|wp\-locations\.php)") {
    set $w3tc_rewrite3 1;
  }
  if ($w3tc_rewrite3 != 1) {
    set $w3tc_rewrite 0;
  }
  if ($http_cookie ~* "(comment_author|wp\-postpass|wordpress_\[a\-f0\-9\]\+|wordpress_logged_in)") {
    set $w3tc_rewrite 0;
  }
  if ($http_user_agent ~* "(W3\ Total\ Cache/0\.9\.2\.4)") {
    set $w3tc_rewrite 0;
  }
  set $w3tc_ua "";
  set $w3tc_ref "";
  set $w3tc_ssl "";
  set $w3tc_enc "";
  if ($http_accept_encoding ~ gzip) {
    set $w3tc_enc _gzip;
  }
  set $w3tc_ext "";
  if (-f "$document_root/wp-content/w3tc/pgcache/$request_uri/_index$w3tc_ua$w3tc_ref$w3tc_ssl.html$w3tc_enc") {
    set $w3tc_ext .html;
  }
  if ($w3tc_ext = "") {
    set $w3tc_rewrite 0;
  }
  if ($w3tc_rewrite = 1) {
    rewrite .* "/wp-content/w3tc/pgcache/$request_uri/_index$w3tc_ua$w3tc_ref$w3tc_ssl$w3tc_ext$w3tc_enc" last;
  }
  # END W3TC Page Cache core

}

Apa yang dikatakan netstat -pan - adalah nginx mendengarkan pada level tcp?
rackandboneman

Terima kasih atas wawasan @rackandboneman sepertinya mendengarkan di sini isinya. gist.github.com/2934638
jnolte

Apakah ada yang muncul di log kesalahan? Apa yang dikatakan nginx -t?
kworr

Dari nginx -t: nginx: file konfigurasi /etc/nginx/nginx.conf sintaks ok ok nginx: file konfigurasi /etc/nginx/nginx.conf tidak berhasil dalam tes kesalahan.
jnolte

Apakah Anda memeriksa firewall? (maaf tentang pertanyaan bodoh!)
Pothi Kalimuthu

Jawaban:


0

Di location ~ \.php$blok Anda , harap sertakan baris berikut, jika belum ada di fastcgi_paramsfile ...

fastcgi_param HTTPS on;


Ada alasan mengapa itu diturunkan? Hargai pandangan alternatif atas jawaban saya.
Pothi Kalimuthu

Terima kasih atas komentar @Pothi saya akan mencoba ini dan segera
menindaklanjutinya

@ jnolte Apakah berhasil?
Pothi Kalimuthu

Ini tidak berhasil. Saya akhirnya menggunakan plugin WP untuk memaksa https pada url tertentu dan bukan yang lain. Itu adalah perbaikan termudah.
jnolte

Oh, itu menarik untuk didengar. Terima kasih telah berbagi apa yang berhasil untuk Anda.
Pothi Kalimuthu
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.