ძირითადი შინაარსიდან გადასვლა

აპაჩესა და php- ს ინსტალაცია debian- ზე



გარკვეული შინაარსის მართვის სისტემები არ მუშაობენ nginx და php-fpm კომბინაციაში და მოითხოვენ apache ვებ სერვერს PHP მოდულისთვის. ამისათვის ყველაზე გავრცელებული მიზეზი საჭიროა საიტისთვის ხელსაყრელი მოდულის გამოსაყენებლად.



დააინსტალირეთ ძირითადი კომპონენტები ერთი ბრძანებით. დამოკიდებულება ავტომატურად დამონტაჟდება.

  # aptitude install apache2-mpm-itk libapache2-mod-php5 php5-curl php5-mysqlnd php5-gd 

სტატიის შინაარსი:

კონფიგურაცია apache

პირველი ჩართეთ mod_rewrite. მან აუცილებლად სჭირდება, თუ თქვენი საიტი გამოიყენებს CNC- ს.

  # a2enmod გადაწერა 

საჭირო არ არის mod_php- ის ჩართვა, რადგან ინსტალაციის დროს ავტომატურად ჩართული იქნება.



მე ასევე ვურჩევ რეკომენდაციას გამორთოთ შემდეგი მოდულები, თუ არ სჭირდებათ მათ:

  # a2dismod -f autoindex deflate setenvif სტატუსი 

ეს საშუალებას მოგცემთ შეამცირონ მეხსიერების მოხმარება.

გახსენით /etc/apache2/conf-available/charset.conf ფაილი და შეუერთეთ შემდეგი ხაზი:


  AddDefaultCharset UTF-8 

ეს დირექტივა მიუთითებს, რომ ნაგულისხმევი კოდირება UTF-8 იქნება. თუ თქვენი საიტები გამოიყენებთ სხვადასხვა კოდირებას, მაგალითად, CP-1251, მაშინ საჭიროა, რომ მიუთითოთ იგი ან იქონიოთ ვირტუალური მასპინძლის პარამეტრებში.

ცვლილებების შენახვა.

გახსენით /etc/apache2/conf-available/security.conf ფაილი და ServerTokens OS ის ServerTokens OS გადაყვანა ServerTokens Prod . ეს მალავს აპაჩში ვერსიას კლიენტებისთვის.

ServerSignature On სიმებიანი ServerSignature On ServerSignature Off .

ცვლილებების შენახვა.

გახსენით /etc/apache2/apache2.conf ფაილი რედაქტირებისთვის და მოძებნეთ KeepAlive On პარამეტრი. თუ მას შემდეგ, რაც კონფიგურაციის აპაჩში, თქვენ დააინსტალირეთ nginx და თქვენ მარიონეტული მოთხოვნისგან მოითხოვს, მაშინ ეს პარამეტრი უნდა იყოს კონვერტირებული KeepAlive Off , რადგან ეს ფუნქცია (კლიენტთან კავშირი შენარჩუნდება) მოხდება Nginx- ის მიერ. თუ თქვენ აპირებთ გამოიყენოთ აპაჩა, როგორც თქვენი ძირითადი სერვერი, ეს ფუნქცია უნდა იყოს კონფიგურირებული.

MaxKeepAliveRequests - მუდმივი კავშირის შენარჩუნების მოთხოვნის მაქსიმალური რაოდენობა. საუკეთესო შესრულებისათვის, რეკომენდირებულია მაღალი ღირებულების დაყენება. დაწყებისთვის, ნაგულისხმევი მნიშვნელობა არის 100.

KeepAliveTimeout არის დრო წამში დაველოდოთ მომდევნო მოთხოვნით იგივე კლიენტი.

გადავარჩინე ცვლილებები და გადატვირთეთ აპაჩში.

გახსენით /etc/apache2/mods-available/mpm_prefork.conf ფაილი.

ამ ფაილში პარამეტრების მითითება დამოკიდებულია საიტის ტრაფიკისა და სერვერული რესურსების მიხედვით. დასაწყებად, სცადეთ საიტის შექმნა მინიმალური კონფიგურაციით და უყურეთ მუშაობას. თუ აღმოჩნდება, რომ რესურსები არასაკმარისია, გაზრდის მათ.

მიუთითეთ ნაგულისხმევი მნიშვნელობა ამ თვალსაზრისით:

  დასაწყისიდან 2
 MinSpareServers 2
 MaxSpareServers 6
 MaxRequestWorkers 32
 MaxConnectionsPerChild 0

StartServers - რიცხვი ბავშვთა სერვერის პროცესების შექმნილია გაშვების დროს.

MinSpareServers - უმოქმედო პროცესების მინიმალური რაოდენობა.

MaxSpareServers - უმოქმედო პროცესების მაქსიმალური რაოდენობა.

MaxRequestWorkers - მაქსიმალური რაოდენობა კავშირები, რომლებიც დამუშავდება ერთდროულად.

MaxConnectionsPerChild - მაქსიმალური რაოდენობა კავშირები, დამუშავების შემდეგ, რომელიც, ბავშვის პროცესი შეწყდება. შეიძლება სასარგებლო იყოს მეხსიერების გაჟონვის საქმეში.

ასევე შეინახეთ ცვლილებები და გადატვირთეთ აპაკეტი: სერვისის apache2 გადატვირთვა .

შექმნა ვირტუალური მასპინძელი

ვირტუალური მასპინძელი არის კონკრეტული საიტისთვის კონფიგურაციის პარამეტრების ჯგუფი. იგი მოიცავს მიღებული დომენი, ელ ადმინისტრატორი, ბილიკები log ფაილი, კავშირი php ელფოსტის და ა.შ.

მე მომწონს ვირტუალური მასპინძელი კონფიგურაციები ერთ ფაილში - apache2.conf. თუ ყველა მასალისთვის მასიურად შეცვლის მნიშვნელობა, თქვენ არ დაგჭირდებათ ღია ვირტუალური მასპინძლების ყველა კონფიგურაციის გახსნა.

პირველი, გამორთეთ ნაგულისხმევი საიტი.

  # a2dissite 000 - default 

/Etc/apache2/apache2.conf ფაილის დასასრულს ჩაწერეთ შემდეგი დირექტივა:

  <VirtualHost *: 80>

 </ Virtualhost> 

ეს დირექტივა ჯგუფები ყველა საიტის პარამეტრია. რომ ის ვირტუალური მასპინძელია. ამ დირექტივის ფარგლებში დაწერილია შემდეგი პარამეტრები.

ServerName - თქვენი დომენი www. (მაგალითად, example.com.)

ServerAlias - დომენი www (www.example.com)

DocumentRoot - დირექტორია, სადაც თქვენი საიტის ფაილი მდებარეობს. მაგალითად, / var / www /.

ServerAdmin - საიტის ადმინისტრატორის ელ.

ErrorLog - ადგილმდებარეობის შეცდომა log ფაილი. როგორც წესი, ისინი მდებარეობს / var / log / apache2 / დირექტორიაში. ამისათვის გამოიყენება $ {APACHE_LOG_DIR}. მაგალითი:

  ErrorLog $ {APACHE_LOG_DIR} / example.com .error.log 

LogLevel warn . ჩვენ არაფერი შეცვლით, ჩვენ ამას დავრეგისტრირებთ. ადგენს შეცდომის შეცვლის დონეს.

CustomLog - წვდომის-ლოკალურ ადგილის ადგილმდებარეობა და ტიპი. ნაგულისხმევი ტიპი კომბინირებულია. მიუხედავად იმისა, რომ არსებობს სხვა ტიპები. მაგალითი:

  CustomLog $ {APACHE_LOG_DIR} /example.com.access.log კომბინირებული 

ორივე მაგალითში example.com შეიცვლება თქვენი დომენის გარეშე www.

ჩვენ დავამატებთ პარამეტრების mpm-itk, რადგან ჩვენ დაყენებული ამ კონკრეტულ მოდულს. რას აძლევს მას? საშუალებას გაძლევთ გაუმკლავდეს php სკრიპტები სახელით მომხმარებელი, რომელიც ფლობს საიტი.

  <IfModule mpm_itk_module>
 AssignUserId მომხმარებლის ჯგუფი
 </ IfModule> 

აქ თქვენ უნდა შეცვალოთ მომხმარებელი მომხმარებლის სახელი და ჯგუფი ჯგუფის სახელით, რომელთა მთავარი ფოლდერები მდებარეობს.

ჩვენ განსაზღვრავს პარამეტრების დირექტორიები.

  <დირექტორია />
 პარამეტრები + FollowSymLinks
 AllowOverride None
 საჭიროა ყველა მინიჭებული
 </ დირექტორია>
 <დირექტორია / var / www>
 პარამეტრები-ინდექსები + FollowSymLinks 
 AllowOverride ყველა
 დაალაგე დაუშვას, უარყოფს
 ნება ყველა
 </ დირექტორია> 

ჩანაცვლება დირექტორია / var / www ერთად, სადაც თქვენი საიტები მდებარეობს.

ჩვენ დააკავშირებს დამმუშავებლის php- სკრიპტები.

  <IfModule mod_php5.c>
 php_admin_flag ძრავა
 php_admin_value open_basedir "/ var / www: / tmp / სხდომები: / tmp / upload_tmp"
 php_admin_value upload_tmp_dir / tmp / სხდომები
 php_admin_value session.safe_path / tmp / upload_tmp
 php_admin_value sendmail_path "/ usr / sbin / sendmail -t -i-fmail@example.com"
 </ IfModule> 

open_basedir როგორც მნიშვნელობა, ჩვენ განსაზღვრავს colon დირექტორიები, სადაც php ექნება წვდომა: დირექტორია საიტი, დირექტორია შენახვის სხდომა ფაილი, დირექტორია ჩამოტვირთვის დროებითი ფაილები.

upload_tmp_dir - დირექტორია შენახვის დროებითი ფაილი. საიტზე სურათის (ან სხვა) ატვირთვისას, გადმოწერილი ფაილი თავდაპირველად განთავსდება ამ დირექტორიაში, შემდეგ საბოლოო ადგილას.

session.safe_path - დირექტორია შენახვის სხდომები.

უსაფრთხოების მიზეზების გამო, ეს ორი დირექტორი არ უნდა იყოს დაცული საჯარო ადგილას. შექმნა მათ მომხმარებლის მთავარი დირექტორია, სადაც თქვენი საიტები მდებარეობს. მხოლოდ ამ მომხმარებლისთვის წვდომის უფლება (უფლებები 0750).

sendmail_path - sendmail_path გზას და პარამეტრებს. როგორც წესი, sendmail მდებარეობს / usr / sbin დირექტორიაში. -F პარამეტრის შემდეგ, თქვენ უნდა მიუთითოთ ელ.ფოსტის გარეშე, სივრცის გარეშე.

გადავარჩინოთ apache2.conf კონფიგურაციის ფაილი, გადატვირთვა apache:

  სერვისის apache2 გადატვირთვა 

ტესტირება მორგებული ჩანართებით

საიტის დირექტორიაში შექმნა ფაილი index.php. ჩაწერეთ კოდი:

  <php phpinfo ();  ?> 

შემდეგ გახსენით თქვენი ვებ-გვერდი ბრაუზერიდან და იხილეთ თუ არა PHP ინფორმაცია. თუ კი, მაშინ სერვერი წარმატებით არის კონფიგურირებული და შეგიძლიათ საიტის განთავსება მისთვის განკუთვნილი.

წინააღმდეგ შემთხვევაში, თქვენ უნდა გაანალიზოთ შეცდომის ჟურნალი, შეამოწმეთ პარამეტრები კონფიგურაციის ფაილებში.



როგორ შეაფასებ სტატიას?
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 ( 2 რეიტინგი, საშუალოდ: 5.00 გარეთ 5)
იტვირთება ...

” 2 კომენტარები " დეკონის და php- ის ინსტალაცია Debian "

  1. გმადლობთ. ჩემი სახელია სერგეი. 65 წლის. uch. ექიმი. SPb. მიიღო VDS ჰოსტინგი. მასზე დაფუძნდა საიტი: egmontgroup.ru
    თქვენი სტატიის მიხედვით: php7. ასევე postgreSQL 9.4 და Apache 2.4
    ძირითადად ნორმალურია. ადგილობრივ კომპიუტერზე Debian 8.6 jessey (on VDS არის იგივე). მე დაყენებული ყველა იგივე. მაგრამ უკვე დღე და ღამე არ შემიძლია დავიწყო Apache. ჟურნალში არ არის ნათელი, არაფერი მოხდა VDS- ზე.
    და რაც შეეხება VDS მასპინძლობას (არსებობს მხოლოდ ssh (ვიყენებ). ?
    მიმართვა გმადლობთ. ჩემი ელფოსტა არის sergeygsd@yandex.ru
    მე ასევე მომეწონა მუშაობა შორის PHP ვერსია.

კომენტარის დამატება

თქვენი ელფოსტა არ გამოქვეყნდება.