2014-10-14 52 views
6

Tôi đang làm việc để nhận NGINX được định cấu hình trên máy chủ và tôi có thể tải tất cả các tệp của mình vào /usr/local/nginx/html/. Tôi cũng đã tạo một tệp nginx.conf trong /usr/local/nginx/conf. Tất cả những gì chứa là:NGINX thay đổi vị trí cấu hình

server { 
    root /usr/local/nginx/html; 
    index index.html index.html; 
} 

Tôi đã sử dụng /usr/local/ bởi vì đó là điều duy nhất tôi có quyền viết Khi tôi đi đến nhìn vào trang web, tôi vẫn nhận được trang Nginx index.html với thông điệp.:

Đây là trang mặc định index.html được phân phối với nginx trên EPEL. Nó nằm ở /usr/share/nginx/html.

Bây giờ, bạn nên đặt nội dung của mình ở vị trí bạn chọn và chỉnh sửa chỉ thị cấu hình gốc trong tệp cấu hình nginx /etc/nginx/nginx.conf.

Tôi đoán câu hỏi của mình là, làm cách nào tôi có thể định cấu hình tệp nginx.conf của mình một cách chính xác để sử dụng tệp đó và kéo từ vị trí sửa cho tệp trang web?

+1

Kiểm tra '/ etc/sysconfig/nginx' tập tin, trên một số môi trường tập tin này sẽ được kiểm tra trên init script, và đó là một nơi tốt để thay đổi con đường NGINX_CONF_FILE sử dụng trong init script này. – regilero

+0

Tôi không có quyền chỉnh sửa tệp đó, chỉ những tệp được chỉ định ở trên. Đang cố gắng thực hiện điều này mà không cần thêm quyền mới. Cảm ơn! – heatherthedev

+0

Câu hỏi không cho biết anh ta đang sử dụng init, nhưng có lẽ đó là một giả định hợp lý. @ heatherthedev, bạn bắt đầu nginx như thế nào? –

Trả lời

11

Cho dù bạn đang bắt đầu nginx trong trình bao hay sử dụng dịch vụ daemon (chỉ đơn giản là trình bao bọc xung quanh dòng lệnh api), câu trả lời nằm trong the command line API.

Như bạn đã biết, vị trí mặc định nginx tìm kiếm cho tệp cấu hình là /etc/nginx/nginx.conf, nhưng bạn có thể chuyển một đường dẫn tùy ý với cờ -c. Ví dụ .:

$ nginx -c /usr/local/nginx/conf 

Một vài ghi chú khác:

  • tôi nghi ngờ có bất kỳ lý do chính đáng để lặp lại "index.html" trong khối máy chủ của bạn.
  • Tôi sẽ đặt tên cho tệp cấu hình của bạn là "nginx.conf" (bạn hiện chỉ ra rằng nó được đặt tên là "conf"). Đó là tiêu chuẩn.
  • Làm quen với cờ dòng lệnh khác -t, chỉ kiểm tra để đảm bảo tệp cấu hình của bạn hoạt động. Chạy nginx -t mỗi lần sau khi sửa đổi tệp cấu hình của bạn và nó sẽ nhổ ra bất kỳ lỗi cú pháp nào. Để tải lại cấu hình sau khi thay đổi, hãy sử dụng nginx -s reload.
+0

Tuyệt vời - hiện đang thiếu quyền để thực sự kiểm tra điều này nhưng tôi sẽ thử nó sớm. – heatherthedev

+0

Đã làm việc tuyệt vời! Bây giờ để giải quyết mọi thứ khác;) – heatherthedev

2

Đây là cách để biên dịch nginx để tìm conf mặc định trong thư mục khác:

./configure --conf-path=/etc/some/other/nginx.conf 
make 
make install 
nginx 

Từ các tài liệu:

--conf-path = con đường - đặt tên của tệp cấu hình nginx.conf. Nếu cần, nginx luôn có thể được bắt đầu bằng một tệp cấu hình khác, bằng cách chỉ định nó trong tham số dòng lệnh -c tệp. Theo mặc định, tệp được đặt tên là tiền tố/conf/nginx.conf.