it-swarm-vi.tech

Bạn sẽ gặp phải vấn đề gì nếu sử dụng Nginx

WordPress là một bộ nhớ khá lớn và tôi đã nghĩ đến việc sử dụng nginx thay vì Apache.

Một cân nhắc chính trước khi làm điều đó là nếu có bất kỳ plugin nào sẽ ngừng hoạt động. Tôi đã thử nghiệm một vài cái và chúng dường như hoạt động, nhưng tôi cần tìm hiểu xem có cái nào có thể bị hỏng không.

3
Sudhanshu

Tôi không may không có kinh nghiệm về vấn đề này nhưng rõ ràng nó có thể được thực hiện vì các bài viết và plugin này giải quyết một số vấn đề:

Bạn cũng quen thuộc với Lưu trữ WP Engine WordPress ? Họ rõ ràng đang sử dụng nó trong một hình thức lai với Apache, có thể là một proxy phía trước.

Hy vọng những sự giúp đỡ này.

3
MikeSchinkel

Thế giới nhỏ bé :). Bạn sẽ không thấy nhiều vấn đề với Nginx và Apache + Wordpress. Chúng tôi cũng sử dụng nó cho công ty của mình và chúng tôi không gặp vấn đề gì khi có một máy chủ phục vụ 200 nghìn lượt xem/tháng và hơn một triệu lượt xem trang/tháng cho một trang web. Nginx + W3 Total Cache, bạn nhận được một số con số rất đáng chú ý.

2
Vid Luther

Sự khác biệt lớn nhất là các quy tắc viết lại, nhưng có rất nhiều hướng dẫn ngoài kia (chẳng hạn như các quy tắc mà Mike liên kết) cung cấp cho bạn các quy tắc viết lại tương đương.

Từ góc độ plugin, trừ khi plugin đang làm điều gì đó thực sự , thì nó không nên biết sự khác biệt. Tất cả các quy tắc viết lại nội bộ và các công cụ sắp xếp đó được xử lý ở cấp độ WordPress, độc lập với HTTPD của bạn.

Tóm lại, đi cho nó.

1
Viper007Bond

Sử dụng Nginx sẽ không khiến Wordpress sử dụng ít bộ nhớ hơn. Nếu bạn lo lắng về bộ nhớ, bạn có thể lưu một số máy chủ thông minh bằng cách tối ưu hóa cấu hình Apache của bạn để chỉ tải các mô-đun bạn cần và thực hiện cấu hình khác sẽ làm giảm bộ nhớ mà Apache cần.

Bên cạnh đó, Apache cũng có các mô-đun bộ đệm rất đáng để xem xét, vì vậy để lưu tất cả bộ nhớ mà WordPress sẽ sử dụng khi được gọi. Vì đầu ra WordPress được lưu trong bộ nhớ cache, Wordpress không cần phải chạy nữa và bạn tiết kiệm bộ nhớ.

1
hakre

Khi WordPress phát hiện mod_rewrite không được tải, nó sẽ quay trở lại pathinfo, tức là: (/ index.php /% postname% /) permalinks trong trang Cài đặt Permalink. Bạn có thể sử dụng plugin nginx Tương thích để buộc WordPress sử dụng permalinks đẹp mắt sau đó thêm quy tắc viết lại vào tệp máy chủ nginx của bạn:

server { server_name mysite.com;

root /path/to/blog;

index index.php;

location / {
    try_files $uri $uri/ @wordpress;
}

location @wordpress {
    fastcgi_pass ...;
    fastcgi_param SCRIPT_FILENAME $document_root/index.php;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_NAME /index.php;
}

location ~ \.php$ {
    try_files $uri @wordpress;
    fastcgi_index index.php;
    fastcgi_pass ...;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include /etc/nginx/fastcgi_params;
}

}
0
Chris_O

Các tài liệu được viết bằng tiếng Nga và hơi mơ hồ. Đôi khi bạn tự hỏi liệu bản dịch có tệ hay không, nếu tài liệu chỉ không rõ ràng ở nơi đầu tiên. Vì vậy, việc tìm kiếm câu trả lời đôi khi tốn thời gian và/hoặc yêu cầu kiểm tra thử và sai.

Tuy nhiên, tác giả dường như rất gắn bó với cộng đồng, giải thích các tùy chọn cấu hình. Và chính NginX cung cấp cho bạn một số phản hồi, chẳng hạn như "bạn không thể sử dụng tùy chọn này tại đây".

0
PJ Brunet

Tôi đã thực hiện nghiên cứu cho Ngnix, thiết lập wordpress được kích hoạt bộ đệm ẩn.

Cấu hình Nginx Virtualhost cho wordpress.

server {
        listen 127.0.0.1:8080 default_server;
        listen [::]:8080 default_server;
         root /var/www/html/wordpress;
        index index.php index.html index.htm;
        server_name yourdomain.com www.yourdomain.com;
        location / {
                        try_files $uri $uri/ /index.php?$args;
                }
         location ~ \.php$ {
                                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
                                fastcgi_index index.php;
                                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                                fastcgi_param PATH_INFO $fastcgi_path_info;
                                include fastcgi_params;
                            }
}

Cài đặt véc ni mở tập tin/etc/default/véc ni, cấu hình như bên dưới.

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

Kiểm tra cổng chạy.

netstat -ntulp

nếu không tìm thấy lệnh netstat.

Sudo apt-get install -y net-tools
0
Arvind