Phát triển nghề nghiệp luôn tập trung vào các công cụ của riêng mình - đây là sự đảm bảo cho việc hoàn thành nghĩa vụ một cách đáng tin cậy và hiệu quả. Lưu trữ và máy chủ riêng cho các mục đích khác nhau trong một loạt các cấu hình phổ biến mở rộng phạm vi nhiệm vụ cần giải quyết, tăng tính bảo mật và bí mật của các phát triển.
HTTP gốc: Apache, PHP, MySQL
Máy chủ web Apache đã là một nhà lãnh đạo vững chắc kể từ thế kỷ trước vì nó cung cấp trải nghiệm nhanh chóng, đáng tin cậy và an toàn. Một máy vật lý và một máy chủ chạy Linux hoặc Windows là nền tảng, HTTP là phần bổ trợ, mặc dù về bản chất nó là một giao thức truyền thông. Máy Windows có thể được sử dụng làm máy chủ nhưng dòng máy Linux được ưu tiên hơn.
Apache trên Windows là một biến thể cục bộ được sử dụng trên một máy duy nhất để sao chép sự phát triển của các tài nguyên được lưu trữ trên các máy chủ bên ngoài. Cài đặt trên Windows Server có thể chấp nhận được, nhưng không phổ biến lắm. Thiết lập Apache trên CentOs cung cấp nhiều tùy chọn hơn và được sử dụng để tổ chức các máy chủ trong cục bộ vàmạng toàn cầu.
Người ta tin rằng các máy chủ Apache phục vụ hơn 50% tổng số tài nguyên web đang hoạt động, phần còn lại thuộc về các sản phẩm tương tự của Microsoft, Sun và các hãng khác. Trên thực tế, máy chủ vật lý và hệ điều hành của nó có thể là bất cứ thứ gì. Máy chủ HTTP được đặt trên một nền tảng làm sẵn và hoạt động song song với các ứng dụng khác trên đó. Apache được coi là bản địa của toàn bộ dòng Linux, nhưng trong mỗi trường hợp, nó có những đặc thù riêng.
Hệ thống Linux miễn phí, đơn giản, đáng tin cậy và các ứng dụng của chúng. Không quan trọng bạn sử dụng gì: Cài đặt và cấu hình Apache trên Ubuntu không khác nhiều so với CentOs, Debian hoặc FreeBSD. Thường thì độ bão hòa của một hệ điều hành cụ thể với phần mềm bổ sung đóng một vai trò quan trọng.
Họ Linux nhỏ về số lượng "họ hàng" trên dòng của một hoặc một lõi khác của hệ thống. Sự khác biệt mang tính chất xã hội nhiều hơn - theo nghĩa là sự gắn bó của các nhà phát triển với việc xây dựng và triển khai các khả năng của hệ điều hành.
Trong thực tế, để giải quyết một nhiệm vụ cụ thể nhằm nâng cao lưu trữ, bạn cần quyết định về chức năng cần thiết, hiệu suất cần thiết, ưu tiên khái niệm và lựa chọn cụ thể của đại diện Linux hoặc dừng lại ở Windows Server.
Thay đổi các ưu tiên phát triển địa phương
Rất khó để đánh giá vai trò của mạng toàn cầu đối với sự phát triển của lập trình, nhưng có thể dễ dàng nhận thấy một sự thay đổi thực sự về trọng tâm: nó đã trở thành thông lệ để thực thi các ứng dụng cục bộ như một tài nguyên web. Chỉ cần viết một chương trình chomáy tính cục bộ - đây là các trình điều khiển, chương trình chống vi-rút, các dự án nhỏ với chức năng đơn giản. Ngôn ngữ lập trình… VBA, mặc dù có thể sử dụng C / C ++ hoặc C.
Bất kỳ dự án thông tin nào đều là tài nguyên web trong mạng cục bộ của công ty, có thể được truy cập một phần từ mạng toàn cầu, ví dụ, để điều phối các hành động của nhân viên bên ngoài văn phòng, trên đường hoặc trong chuyến công tác.
MySQL, PHP, Apache: thiết lập cho trường hợp sử dụng cục bộ - một động lực hoàn toàn khác của ứng dụng, chức năng cần thiết. Các công ty ngày nay, bất kể quy mô, số lượng nhân viên và ngành công nghiệp, đều đang xem xét nghiêm túc việc lập trình Internet, cả địa phương và toàn cầu.
Đồng thời, lập trình cục bộ của tài nguyên web có thể được phân phối: văn phòng công ty có thể được đặt ở bất cứ đâu, nhưng đây không phải là Internet, mà là mạng cục bộ phân tán của công ty.
Thiết lập MySQL, PHP, Apache ở dạng cục bộ:
- dễ sao chép trên các máy tính trong mạng;
- cung cấp khả năng thay đổi động thành phần đang hoạt động hoặc kết hợp nó với một mẫu để đánh giá các nỗ lực tấn công;
- đưa ra lý do để phát triển một hệ thống bảo mật không có nguy cơ bị tấn công bởi các phương pháp mạng cổ điển.
Nếu chúng ta tính đến rằng MySQL và Apache trong môi trường Windows là các dịch vụ và mã PHP là văn bản thuần túy được xử lý bởi một công cụ (trình thông dịch PHP) được gọi vào đúng thời điểm bởi máy chủ HTTP, thì mức độ thay đổi, tính di động và tính khả chuyển của mã sẽ đượccao hơn đáng kể so với các công cụ phát triển địa phương.
Chuẩn bị cài đặt Apache
Ngay cả trong thời đại của "sự khởi đầu của sự khởi đầu", hệ điều hành Unix đã xác định các nguyên tắc bất thành văn về lòng trung thành. Kể từ đó, mọi thứ được thực hiện trong các hệ thống giống Unix đều được tự động dịch sang các nền tảng khác. Thiết lập Apache trên Windows cực kỳ dễ dàng, nhưng các tác vụ nghiêm trọng đòi hỏi mức độ kinh nghiệm tốt và hiểu biết chi tiết về cấu hình máy chủ
Trước hết, bạn cần tải xuống phiên bản mới nhất của máy chủ (hôm nay là phiên bản 2.4.33 ngày 2018-03-17) từ trang web chính thức ở định dạng zip-archive. Ban đầu cần lưu ý rằng các phiên bản máy chủ rất nhiều và được cung cấp trên nhiều tài nguyên của bên thứ ba, vì vậy, điều quan trọng là phải chọn một triển khai chính thức được lưu trữ trên một tài nguyên web đáng tin cậy.
Trước đây, việc cài đặt một máy chủ thông qua một trình cài đặt đặc biệt là rất phổ biến. Hiện nay, một thực tế phổ biến là chỉ cần mở rộng một kho lưu trữ zip. Điều này dễ dàng hơn và giúp bạn có thể hiểu được bản chất của quá trình cấu hình, điều này rất quan trọng và sau đó cho phép bạn tối ưu hóa máy chủ để có tải và chức năng mong muốn.
Chỉnh sửa tệp cấu hình
Cấu hình máy chủ được xác định bởi một tập hợp các tệp cấu hình nằm trong thư mục conf. Tệp cấu hình Apache chính là
Trong phần lớn các trường hợp, cần phải thực hiện các thay đổi đối với tệp chính, làm rõ nội dung của các tệp chịu trách nhiệm về ssl và máy chủ ảo. Các cài đặt khác thường làđược thực hiện trong quá trình hoạt động của máy chủ khi các vấn đề phát sinh hoặc các nhiệm vụ được giải quyết. Về cơ bản, các cài đặt khác liên quan đến việc tối ưu hóa Apache hoặc mở rộng khả năng của nó.
Để khởi chạy thành công máy chủ, chỉ cần chỉnh sửa một dòng (theo thứ tự - thứ 38) - và cấu hình Apache đã hoàn tất.
Trong các phiên bản trước của cấu hình máy chủ, cần phải thực hiện nhiều thay đổi cho phù hợp với tình hình thực tế, nhưng bây giờ có một biến SRVROOT "phổ biến". Cần chỉ định giá trị chính xác của nó (đường dẫn đến vị trí máy chủ) và mọi thứ sẽ hoạt động ngay lập tức.
Quy trình Triển khai Máy chủ
Bạn cần phải cẩn thận về vị trí của máy chủ. Bản thân Apache đã thú vị, nhưng khi nó được trang bị PHP và MySQL, nó thú vị gấp đôi. Sẽ tốt hơn khi mọi thứ liên quan đến phát triển web đều ở một nơi. Bạn có thể đồng ý với các đường dẫn mặc định, nhưng lập trình hiện đại không quá lý tưởng trong việc triển khai nó, vì vậy bạn sẽ phải theo dõi mạch một cách rõ ràng và thường xuyên. Ngoài ra, khi chọn một vị trí thuận tiện, tất cả các tệp khởi tạo và cấu hình, cũng như nhật ký hoạt động của các sản phẩm đã cài đặt sẽ có sẵn.
Kho lưu trữ zip Apache chính thức đã tải xuống nên được triển khai đến vị trí đã chọn, đặt công cụ và hoạt động riêng biệt. Trong ví dụ này, thư mục C: / SCiA là công cụ (Apache24, PHP, MySQL,…) và thư mục SCiB là công việc của các trang web được tạo, duy trì hoặc nâng cấp.
Kết quả làỞ bước đầu tiên của công việc, chỉ các thư mục con bin, cgi-bin, conf, error, … với tất cả nội dung của chúng mới được vào thư mục C: / SCiA / Apache24.
Chỉnh sửa tệp máy chủ
Bước thứ hai là thiết lập đúng cách tệp máy chủ lưu trữ - một dấu hiệu cho biết địa chỉ IP nào trên một máy tính nhất định được ánh xạ tới tên nào. Nếu máy tính sẽ chỉ phát triển hoặc duy trì một trang web, thì bạn không thể thay đổi bất cứ điều gì.
IP cơ sở - 127.0.0.1 thường luôn trỏ đến localhost. Tệp máy chủ đang hoạt động được đặt tại c: / Windows / System32 / drivers / etc và trông giống như sau.
Để đặt tệp hosts vào đúng vị trí, bạn cần sử dụng dòng lệnh ở chế độ quản trị viên. Bạn có thể chuẩn bị nội dung chính xác của tệp ở bất kỳ đâu trên hệ thống tệp của máy tính, nhưng bạn chỉ có thể ghi nó vào c: / Windows / System32 / drivers / etc bằng một công cụ có quyền quản trị viên. Cách dễ nhất để làm điều này là thông qua dòng lệnh.
Cài đặt máy chủ Apache
Không có gì dễ dàng hơn. Bạn chỉ cần chạy dấu nhắc lệnh với tư cách quản trị viên và đi tới thư mục C: / SCiA / Apache24. Vì đây là một đường dẫn trên hệ thống Windows nên các dấu gạch chéo về phía trước được sử dụng. Trong một trường hợp cụ thể, đường dẫn có thể khác. Nhưng nếu bạn vẫn có thể thử nghiệm với tên của thư mục lưu trữ bộ ba thần thánh - Apache, PHP và MySQL - thì việc thay đổi tên thư mục cho từng tên trong số chúng là không thực tế.
Trong trường hợp này, kho lưu trữ máy chủ được triển khai trong thư mục C: / SCiA / Apache24,do đó, bạn cần viết lệnh trong thư mục bin:
httpd.exe -k cài đặt
Máy chủ sẽ kiểm tra tệp cấu hình và tự cài đặt. Nhiều khả năng sẽ có những lỗi nhỏ, nhưng nếu bạn chỉnh sửa đúng tệp cấu hình thì mọi lỗi sẽ nhỏ và có thể nhanh chóng được sửa.
Cửa sổ (1) của dòng lệnh - cài đặt dịch vụ, cửa sổ (2) - danh sách các dịch vụ mà máy chủ xuất hiện, cửa sổ (3) - tệp nguồn index.html nằm tại С: / SCiB / localhost / www, window (4) - kết quả của máy chủ.
Trong ví dụ này, một sai lầm đã được cố tình tạo ra: thay vì đặt giá trị của biến SRVROOT, nhiều chỉnh sửa đã được thực hiện theo "cách cũ": mọi thứ được thay đổi theo cách thủ công. Đây không phải là giải pháp tốt nhất. Trước khi áp dụng kiến thức, bạn nên tự làm quen với phiên bản hiện tại của sản phẩm. Theo quy luật, mọi thứ thay đổi nhanh chóng, và kiến thức nên được áp dụng “với kiến thức về vấn đề và hiểu biết về tình hình hiện tại.”
Thực hành triển khai kho lưu trữ zip
Các trang web hiện đại không phải lúc nào cũng được viết trên hệ thống quản lý nội dung. Lao động chân tay nhiều. Vấn đề chuyển trang web sang một máy chủ lưu trữ khác đã dẫn đến một giải pháp tốt - đó là một kho lưu trữ zip. Thu gọn nội dung ở một nơi, mở rộng nó ở một nơi khác.
Có một trình cài đặt là một việc làm tốt, nhưng sự năng động của công nghệ thông tin hiện đại không cho thời gian để viết ra những bản cài đặt đẹp đẽ. Sử dụng cài đặt thông qua triển khai zip-archive - hiện đại, thiết thực và tiện lợi. Trong tùy chọn này, cấu hình Apache bị giới hạn trong việc thay đổi các tệp cấu hình.
Khi cài đặt máy chủ, điều quan trọng là phải chỉ định:
- anh ấy đang ở đâu;
- nơi chứa tài nguyên web (localhost);
- sử dụng ssl;
- máy chủ ảo.
Vị trí cuối cùng có liên quan khi nó phải phát triển hoặc duy trì nhiều tài nguyên cùng một lúc trên máy chủ. Đối với một nhà phát triển thực sự, đây là điều bắt buộc phải có: ngay cả khi nó cung cấp công việc của một trang web, sẽ không thừa nếu có dự phòng.
Bộ của quý ông
Dễ dàng triển khai một kho lưu trữ zip, Apache (cài đặt và cấu hình) chỉ cách hai hoặc ba lần nhấp chuột. Tuy nhiên, kết quả khi trình cài đặt phổ biến là tương đương. Nhà phát triển chỉ đơn giản là đã dành nhiều thời gian hơn để phát triển phiên bản tiếp theo của sản phẩm của mình. Cài đặt máy chủ, ngôn ngữ máy chủ và cơ sở dữ liệu về cơ bản chỉ là một tập hợp các tệp, dịch vụ khởi động, tệp máy chủ lưu trữ và các đường dẫn mặc định trong đường dẫn biến hệ điều hành.
Sự ra đời của Denver và các bộ dụng cụ phát triển dành cho quý ông tương tự là một bước tiến mang tính cách mạng trong dòng sản phẩm đơn giản và tiện lợi, nhưng đừng nhầm lẫn. Cách mạng và lập trình là những thứ hoàn toàn không tương thích. Đầu tiên là một cuộc xung đột và cách giải quyết như vũ bão của nó, thứ hai là một vấn đề nghiêm trọng đòi hỏi sự bình tĩnh tuyệt đối, đúng giờ, chính xác, nhất quán, chu đáo, an toàn, đáng tin cậy.
Định cấu hình máy chủ Apache là một quy trình nghiêm túc cần được thực hiện rất cẩn thận và mọi thứ phải được hoàn thành để ngày mai bạn có thể thay đổi và làm rõ điều gì đó.
Trong hầu hết các trường hợp, phát triển webtài nguyên là các quá trình khá dài trong đó các yêu cầu đối với dịch vụ (Apache, PHP, MySQL, …) thay đổi nhanh chóng, nhưng luôn có thời gian để hiểu nhiệm vụ tiếp theo và giải pháp tối ưu của nó. Nhưng đây không phải là lý do để tiếp tục sử dụng các set đồ dành cho quý ông. Thời gian trôi qua, nhưng quý ông không thay đổi, đây là một lý lẽ thuyết phục hơn nhiều so với tuyên bố Denver - nó đơn giản, nhanh chóng và dễ tiếp cận.
Nhiều trang - một máy chủ
Thiết lập Apache 2.4 cho một máy chủ duy nhất là một điều xa xỉ phi lý. Mặc dù có thiết kế nhỏ gọn, máy chủ này chịu trách nhiệm rất lớn đối với hơn một nửa tài nguyên web đang hoạt động của Internet. Ngoài ra, không phải tất cả các tài nguyên đều có một phần đại diện và hiển thị trên mạng.
Máy chủ có thể được sử dụng như một cơ sở dữ liệu, như một điểm truyền thông tin, như một bộ lọc, một phân tích cú pháp, như một cơ chế hoạt động trong một quy trình thông tin toàn cầu hơn. Do đó, thiết lập máy chủ ảo Apache hầu như luôn luôn là điều bắt buộc.
Một máy chủ có thể hỗ trợ bao nhiêu tài nguyên web bạn muốn, vì vậy bạn cần bỏ ghi chú dòng 501 trong tệp
Bao gồm conf / extra /
và mô tả tất cả các máy chủ cần thiết trong tệp
bổ sung
Bạn có thể cần phải làm rõ cổng và IP nào mà máy chủ đang lắng nghe, nhưng đây là một vấn đề riêng biệt, lần đầu tiên bạn có thể tự giới hạn mình ở những gì.
Cần lưu ý rằng trong ví dụ này, để thuận tiện cho việc mô tả các tài nguyên web ảo thực (và có nhiều tài nguyên trong số đó), một biến được giới thiệu(DOCROOT) với đường dẫn đến thư mục chia sẻ của tất cả các tài nguyên web có sẵn thông qua máy chủ đã cài đặt.
Cấu hình SSL của Apache khả dụng theo cách tương tự. Trong tệp httpd.conf, bạn chỉ cần để lại các dòng "nguyên trạng" từ 524 đến 531, các dòng này chịu trách nhiệm về hoạt động của SSL.
Apache đơn giản và phức tạp
Những ngày thiết lập máy chủ là một thử thách thực sự đã qua lâu rồi. Ngày nay, thiết lập Apache là một thủ tục rất đơn giản không yêu cầu kỹ năng đặc biệt của nhà phát triển.
Ba bước đơn giản:
- mở rộng kho lưu trữ;
- thay đổi tệp cấu hình;
- cài đặt máy chủ.
Kết quả là Apache hoạt động đầy đủ. Nếu bạn không tính đến sự tinh vi của quá trình chạy máy chủ ở mức tải tối đa hoặc thực hiện phát triển cục bộ trên máy tính Windows, thì không cần thêm kiến thức.
Khó khăn có thể phát sinh trên hệ thống Linux. Sự hiểu biết khác biệt đáng kể về hệ thống tệp, quyền của người dùng và nhóm, cũng như cách tổ chức quá trình tương tác với các ứng dụng khác đòi hỏi nhà phát triển phải có năng lực hơn và hiểu cách máy tính Linux hoạt động.
Định cấu hình Apache trên bất kỳ hệ thống Linux nào mở ra nhiều cơ hội hơn cho nhà phát triển và cung cấp quyền truy cập vào mạng cục bộ và Internet. Theo truyền thống, máy tính Windows là một máy trạm cục bộ và máy chủ nằm trong đó. Máy tính Linux là một máy chủ tệp, một máy chủ web và một điểm hoặc nút mạng cục bộ trong không gian Internet.
Môi trường chuyên nghiệpnhà phát triển
Apache là một khối xây dựng cơ bản của không gian Internet có thể được định cấu hình, sử dụng một cách đơn giản và dễ dàng và sẽ trở thành xương sống của cơ sở hạ tầng mạng của công ty.
Logic này giả định rằng có ít nhất một máy chủ trên mạng chạy máy trạm CentOS, Ubuntu, FreeBSD, Windows. Tối ưu nhất là có hai máy chủ Linux (chính và phụ), thiết lập Apache cho một máy tính cục bộ trong môi trường Windows. Trong trường hợp bị virus tấn công hoặc tình huống bất trắc, máy chủ phụ sẽ thay thế máy chính, máy chủ chính sẽ được sửa chữa và phục hồi. Bạn có thể thay thế cài đặt cục bộ của Apache trên máy trạm (trong Windows) từ kho lưu trữ.
Giải pháp tầm thường này có thể được tinh chỉnh và bổ sung trong thực tế. Quy mô luồng thông tin của một công ty có thể xác định cấu hình mong muốn và số lượng máy chủ cần thiết. Trên thực tế, Apache được thiết kế để hoạt động dưới tải, nhưng không có gì ngăn cản bạn phân phối trách nhiệm của một máy chủ cho nhiều máy chủ. Một giải pháp có tính đến các đặc điểm của một công ty cụ thể luôn hứa hẹn hơn là điều chỉnh tùy chọn của bên thứ ba.