maxo127

ყურადღება! თუ თქვენ აღმოაჩინეთ შეცდომა საიტზე, მონიშნეთ და დააჭირეთ Ctrl+Enter. გმადლობთ თანამშრომლობისათვის!

consulting სათაო გვერდი

consulting სიახლეები

consulting ლინუქსი

consulting ლექსიკონები


consulting სტატიები

consulting გართობა

consulting კიდევ რა?

 

consulting ფოტოალბომები

consulting ფორუმი

consulting სტუმართა წიგნი

consulting ჩატი

consulting საიტის რუკა

consulting გასვლა

Счетчик посещений Counter.CO.KZ - бесплатный счетчик на любой вкус!

 

 

 

 

 

 

 

 

 

 

 

Apache–ს კონფიგურირება

How To


სერვერ Apache კონფიგურირება ნიშნავს მისი საკონფიგურაციო ფაილის – httpd.conf-ის რედაქტირებას. დასაწყისისათვის საკმარისია შემდეგი ცვლილებების შეტანა ამ ფაილში (Apacheს ბოლო ვერსიების საინსტალაციო პაკეტი ბევრ რამეს თვითონ წერს httpd.conf-ში და თავიდან გვაცილებს საკმაოდ მოსაწყენ პროცედურებს, რომლებიც საჭირო იყო ძველი ვერსიების დაყენებისას):
  • ვქმნით კატალოგებს, სადაც ოთავსდება ჩვენი საიტების ფაილები და ვაცნობებთ ამას Apache (DocumentRoot)

  • ვაყენებთ ამ კატალოგის პარამეტრებს (<Directory "D:/Apache/SiteName">)

  • ვუთითებთ ინდექს–ფაილებს (DirectoryIndex)

  • ვუთითებ cgiფსევდონიმებს (ScriptAlias)

  • ვუთითებ cgi–სკრიპტებად ნაგულისხმევ გაფართოებებს (AddHandler)

  • ვუთითებ cgi-bin–კატალოგს

  • ვაყენებთ ენებს

  • ჩავრთავთ SSI–ის

  • ვუთითებ ვირტუალურ ჰოსტებს httpd.conf-ში

  • ვუთითებ ვირტუალურ ჰოსტებს %WINDOWS%\System32\drivers\etc\hosts-ში


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

პირველ რიგში შევქმნათ კატალოგი, სადაც ჩვენი საიტის ფაილები იქნება თავმოყრილი. ინსტალაციისას ასეთი კატალოგი იქმნება იმავე კატალოგში, სადაც სერვერი დგას და ჰქვია htdocs. შესაბამისი ჩანაწერი არის httpd.conf–შიც (თუ ინსტალაცია ნაგულისხმევ მისამართზე გააკეთეთ და არ იყო მითითებული სხვა მისამართი):

DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"

ჩემი აზრით, სჯობს ჩვენი დოკუმენტები არ იყოს C:–ზე, რადგან სისტემის დამხობისას მისი აღდგენა არ არის ისეთი უბედურება, როგორიც ჩვენი ნაოფლარისა. ამიტომ:

შევქმნათ კატალოგი, ვთქვათ, D:/Apache/SiteName.

თუ თქვენ ზუსტად არ გაიმეორებთ აქ მითითებულ მოქმედებებს და სხვა ადგილზე შექმნით კატალოგებს, ან/და სხვა სახელებს დაარქმევთ მათ, ყურადღებით იყავით იქ, სადაც ეს სახელები იქნება შემდეგში გამოყენებული Apache–სათვის მისათითებლად.


ამ კატალოგში შევქმნათ სამი კატალოგი: localhost, othersite, mysite. ყოველ მათგანში შევქმნათ ორი კატალოგი და ორი ცარიელი ფაილი:

wwwhtml–დოკუმენტებისათვის

cgicgi–სკრიპტების შესანახად

access.log – სერვერზე შესვლის ჟურნალი

error.log – შეცდომების ჟურნალი.

მივიღებთ ასეთ რაღაცას:

D:\

Apache\

sitename\

localhost\

cgi\
www\
access.log
error.log

mysite\

cgi\
www\
access.log
error.log

othersite\

cgi\
www\
access.log
error.log

ჩვენ მოვამზადეთ კატალოგები სამი საიტისათვის: localhost, mysite, othersite. კატალოგები www თითოეულში – ეს ამ საიტის მასალებია (გვერდები, სურათები და ა. შ.), cgi cgi–სკრიპტებისათვისაა (თუ გექნებათ ასეთი რამ). დანარჩენი ორი ფაილი – ჟურნალებია, სადაც ჩაიწერება ინფორმაცია საიტზე შესვლის მცდელობების შესახებ (access.log) და შეცდომები და პრობლემები, თუ ასეთი რამ წარმოიშვება (error.log).

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


შევცვალოთ შესაბამისი ჩანაწერი httpd.conf–შიც:

DocumentRoot "D:/Apache/SiteName"


შევცვალოთ კონტეინერი "<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">" (მთელი კონტეინერი!)

<Directory "D:/Apache/SiteName">
Options Indexes Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>

თქვენ უკვე მიხვდით, რომ ამით ჩვენ დავრთეთ ჩვენი კატალოგის ბრაუსერით ნახვის ნება ინდექსების ფაილის მითითების გარეშე, ჩავთეთ SSI–ს მხარდაჭერა, .htaccess–ფაილების გამოყენება (დირექტივა Order იძლევა allow და deny დირექტივების გამოყენების თანმიმდევრობას და ღებულობს ორიდან ერთ მნიშვნელობას: allow,deny ან deny,allow), და საიტზე დაშვება ყველასათვის.


დავუნიშნოთ ჩვენს კატალოგს ინდექს–ფაილები:

სტრიქონი DirectoryIndex index.html შევცვალოთ:

DirectoryIndex index.php index.html index.html.var

თუ არის იმის "საშიშროება", რომ ვინმემ თქვენი საიტი Windows 3.x–ის დროინდელი რაიმე პროგრამით ნახოს, დაამატეთ index.htm–იც :).


CGI–ს კონფიგურირება

იმისათვის, რომ http://localhost/cgi/ ან http://localhost/cgi-bin/ მისამართების მითითებისას Apache–მ ჩვენს კატალოგს მიმართოს, მივუთითოთ ე. წ. ფსევდონიმები cgi–სკრიპტებისათვის:

ScriptAlias /cgi/ "D:/Apache/SiteName/localhost/cgi/"
ScriptAlias /cgi-bin/ "D:/Apache/SiteName/localhost/cgi/"

კატალოგი D:/Apache/SiteName/localhost/cgi/ ხელმისაწვდომი იქნება თქვენი ვირტუალური ჰოსტებისთვისაც ასეთი სახით მიმართვისას: http://ვირტ_ჰოსტის_სახელი/cgi-bin/cgi-script.bat. თუ, მაგალითად, ბრაუსერში ჩავწერთ მისამართს: http://othersite/cgi-bin/cgitest.bat, შესრულდება კოდი, რომელიც წერია ფაილში D:/Apache/SiteName/localhost/cgi/cgitest.bat, ასევე ამ კოდის გაშვება შეიძლება მეორენაირად: http://localhost/cgi/cgitest.bat. ვირტუალურ ჰოსტებს თავისი კატალოგი აქვთ cgi–სკრიპტებისათვის, ამ კატალოგებს მივმართავთ მისამართით "http://ვირტ_ჰოსტის_სახელი/cgi/cgi-script.bat". თვით "cgi" კატალოგების ნახვა ბრაუსერით არ შეიძლება, მათთან მიმართვისას გამოვა შეცდომა 403.


მივუთითოთ Apache–ს, რომ "cgi", "bat", "exe" ფაილები შეასრულოს როგორც cgi–სკრიპტები:

AddHandler cgi-script .cgi .bat .exe

ეს ცოტა დაბნეული დირექტივაა – ხანდახან მისი ჩაწერა არცაა საჭირო, ხანდახან კი სასურველიც არაა. ასეა თუ ისე, თავიდან სჯობს იყოს და თუ რამეა, მერე წავშალოთ ან შევცვალოთ.


შევცვალოთ ბლოკი "<Directory "C:/Server/Apache/Apache2/cgi-bin">":

<Directory "D:/Apache/SiteName/localhost/cgi">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

აქ ცვლილება მხოლოდ პირველ სტრიქონში იქნება (კატალოგის მისამართი), დანარჩენი ისედაც ასეა.


ენები

ენები თავიდან სჯობს არც დაამატოთ, სანამ ვარჯიშის სტადიაში ხართ. ამის გაკეთება ყოველთვის შეგეძლებათ, როცა უმაღლეს პილოტაჟზე გადახვალთ :). თუ რატომღაც რაიმე ენები არის კიდევაც დამატებული (ანუ ასეთი სტრიქონები: AddLanguage lang .lang) – სულაც კომენტარი გახადოთ ჯობია. აი საყურადღებო კომენტარი ფაილიდან httpd-languages.conf:

# * It is generally better to not mark a page as
# * being a certain language than marking it with the wrong
# * language!


თუ მაინცდამაინც რომელიმე ენა გჭირდებთ – დაამატეთ, ეგეც არ არის პრობლემა:

AddLanguage ja .ja იაპონური
AddLanguage el .el
თანამედროვე ბერძნული
AddLanguage pt-br .pt-br
ბრაზილიის პორტუგალიური :)

და ა. შ. მთავარია იცოდეთ, როგორ იწერება ენის სახელი და შემოკლება.
რამდენიმე ენის შემთხვევაში არ დაგავიწყდეთ პრიორიტეტებისა (LanguagePriority) და სიმბოლოთა ნაგულისხმევი ცხრილის (AddDefaultCharset) მითითება, ყველა ამგვარი პარამეტრისა თუ დირექტივის მაგალითებს ნახავთ თვით ფაილში, კომენტარის სტრიქონებში.

თუ რაიმე ეგზოტიკური ენა ან სიმბოლოთა ცხრილი გჭირდებათ, მათ ნახავთ ამ მისამართებზე, (ოღონდ რამდენად იქნება ჩვენს შემთხვევაში რეალიზებადი, ამის რა მოგახსენოთ):

http://www.w3.org/WAI/ER/IG/ert/iso639.htm

http://www.iana.org/assignments/character-sets


SSI–ის ჩართვა

SSI (Server Side Include) – ბრძანებების კრებული, რომლის საშუალებით ვებ–გვერდზე ხერხდება HTML–ით განუხორციელებელი მოქმედებები (გარემოს ცვლადებით ოპერირება, ფაილების სტატისტიკა – ზომა, შექმნის თარიღი და ა. შ.). ეს ყველაფერი CGI-სკრიპტებითაც კეთდება, მაგრამ მთელი სკრიპტის დაწერას, ცხადია, მზა ბრძანების გამოყენება სჯობია.


SSIის ჩასართვად მოხსენით კომენტარი შემდეგ სტრიქონებს:

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

ამის შემდეგ ყველა .shtmlფაილი შემოწმდება SSI-დირექტივებზე.

შეიძლება ისეც, რომ საერთოდ ყველა htmlფაილი გადიოდეს ამ შემოწმებას; ამისათვის გავიმეოროთ მეორე სტრიქონი html–ის მითითებით:

AddOutputFilter INCLUDES .html

ამის შემდეგ უკვე ნებისმიერი htmlფაილი შეიძლება შეიცავდეს SSI-დირექტივებს.

საინსტალაციო ფაილი შეიძლება შეიცავდეს SSI–ის მხარდაჭერას, შეიძლება არც შეიცავდეს.


გადატვირთეთ Apache–სერვისი, თუ ამ ეტაპზე რამეს შემოწმებას დააპირებთ.


ვირტუალური ჰოსტები

ჩვენ შევქმენით კატალოგი localhost, სადაც ჩვენი საიტის ფაილები იქნება; აქედანვე მოხდება საიტის ტესტირება. მაგრამ თუ ერთი კი არა, რამდენიმე საიტი გვაქვს? კი, შეიძლება localhost–ში გავხსნათ ქვეკატალოგები და ასე გამოვიძახოთ: http://localhost/site_1... ეს მეთოდი არცთუ მოხერხებული გამოვა. Apache ამ საკითხს ვირტუალური ჰოსტების საშუალებით წყვეტს.

ვირტუალური ჰოსტები ორნაირია: ან ყველას თავთავისი IP–მისამართი აქვს, ან მისამართი ერთია ყველასთვის და განსხვავდებიან სახელით (name-based hosts).

განვიხილოთ მეორე შემთხვევა:

კატალოგები mysite და othersite – სწორედ ის კატალოგებია, სადაც ჩვეენი ვირტუალური ჰოსტები იქნება. მათში, ისევე, როგორც localhost–ში, უნდა იყოს კატალოგები www და cgi, და ფაილები access.log დაerror.log. ყველა ვირტუალური ჰოსტი გამოიყენებს ერთსადაიმავე IP მისამართს 127.0.0.1.

ჩავამატოთ httpd.conf–ში ასეთი ბლოკი:

(სადღაც ბოლოში იქნება ასეთი სტრიქონები:

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf

ალბათ ლოგიკურია ამ ადგილზე ჩავამატოთ. ისე, სულ ერთია სად იქნება).

NameVirtualHost 127.0.0.1
#localhost
<VirtualHost localhost>
ServerAdmin me@localhost
ServerName localhost
DocumentRoot "D:/Apache/SiteName/localhost/www"
ScriptAlias /cgi/ "D:/Apache/SiteName/localhost/cgi/"
ErrorLog D:/Apache/SiteName/localhost/error.log
CustomLog D:/Apache/SiteName/localhost/access.log common
</VirtualHost>
#othersite
<VirtualHost othersite>
ServerAdmin me@othersite
ServerName othersite
DocumentRoot "D:/Apache/SiteName/othersite/www"
ScriptAlias /cgi/ "D:/Apache/SiteName/othersite/cgi/"
ErrorLog D:/Apache/SiteName/othersite/error.log
CustomLog D:/Apache/SiteName/othersite/access.log common
</VirtualHost>
#mysite
<VirtualHost mysite>
ServerAdmin me@mysite
ServerName mysite
DocumentRoot "D:/Apache/SiteName/mysite/www"
ScriptAlias /cgi/ "D:/Apache/SiteName/mysite/cgi/"
ErrorLog D:/Apache/SiteName/mysite/error.log
CustomLog D:/Apache/SiteName/mysite/access.log common
</VirtualHost>

ბლოკ <VirtualHost>–ში ბევრი სხვა პარამეტრის ჩაწერაც შეიძლება, ისევე, როგორც საერთოდ httpd.conf–ში, მაგრამ ვირტუალური ჰოსტების მართვისათვის სჯობს .htaccess–ის გამოყენება.

პარამეტრები, რომლებიც არ არის მითითებული არც <VirtualHost>–ში და არც .htaccess–ში, მემკვიდრეობით გადმოეცემა მთავარი ჰოსტიდან (localhost).


იმისათვის, რომ სისტემამ (Windows–მა) იცოდეს ვირტუალური ჰოსტების არსებობის შესახებ, საჭიროა შესაბამისი ჩანაწერების გაკეთება ფაილში hosts (არ აურიოთ hosts.sam–ში), რომელიც რატომღაც მიჩქმალულია კატალოგში %WINDOWS%\System32\drivers\etc. თავიდან ის დაახლოებით ასე გამოიყურება:

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

127.0.0.1 localhost

დავამატოთ ორი სტრიქონი:

127.0.0.1 othersite
127.0.0.1 mysite

ახლა, როცა ბრაუსერს ჩავუწერთ http://othersite, ჩაიტვირთება D:/Apache/SiteName/othersite/www.

კიდევ ერთხელ გავიხსენოთ, რომ თუ რაიმე მიზეზით მოგვიწია სატანდარტული პორტის (80) შეცვლა სხვით (მაგ.: 8080), მაშინ პორტის ნომერიც უნდა მივუწეროთ ხოლმე მისამართს: http://othersite:8080


ცვლილებების ძალაში შესასვლელად გადატვირთეთ Apache.


ამით Apache–ს კონფიგურირება შეგვიძლია დამთავრებულად ჩავთვალოთ – ეს პარამეტრები საკმარისია იმისათვის, რომ ამ ეტაპზე ჩვენთვის საჭირო კონფიგურაცია მივიღოთ და შეგვიძლია რომელიმე კატალოგში – othersite, mysite – ჩავწეროთ ჩვენი საიტი მთელი თავის კატალოგებიანად, ქვეკატალოგებიანად და index.htmlიანად, შევიდეთ ბრაუსერით და დავათვალიეროთ.

კარგად რომ დავტკბებით, გადავიდეთ PHP-ს დაყენებაზე. httpd.conf –ს ჩვენ კიდევ დავუბრუნდებით.


შენიშვნები:

httpd.conf - Apache–ს მთავარი საკონფიგურაციო ფაილი. ფაილის სახელი – ტრადიციულია – Apache–ს "წინაპარ" დემონს Unix-ში httpd ერქვა.

ფაილი httpd.conf სერვერ Apache–ს დაყენებისას იწერება კატალოგში ...\Apache Software Foundation\Apache2.2\htdocs\. ფაილი უკვე შეიცავს გარკვეულ საკონფიგურაციო მნიშვნელობებს, მაგრამ, როგორც წესი, რაღაცეების კონფიგურირება მაინც საჭიროა ჩვენი მიზნებისათვის შესათავსებლად.

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

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

დაბრუნება


კომენტარი – საკონფიგურაციო ტექსტურ ფაილებში და პროგრამირების ენებში – რაიმე (httpd.conf–ის შემთხვევაში – "#", php.ini–ს შემთხვევაში – ";") სიმბოლოთი დაწყებული სტრიქონი; ასეთი სტრიქონი მხოლოდ საინფორმაციო ხასიათისაა და არ ახდენს გავლენას კონფიგურაციის პარამეტრებზე. თუ ეს ინფორმაცია ერთ სტრიქონზე არ ეტევა და გადადის შემდეგზე, ეს შემდეგიც კომენტარის სიმბოლოთი უნდა დაიწყოს. ნებისმიერი დირექტივა წაშლის ნაცვლად შეგიძლიათ დროებით გახადოთ კომენტარი წინ "#"–ს დამატებით (ყველა სტრიქონში, თუ რამდენიმე სტრიქონზეა), გადატვირთოთ სერვერი და ნახოთ რა შეიცვალა.

დაბრუნება


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

დაბრუნება


კონტეინერი Directory მთლიანად ასე გამოიყურება:

<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None

#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all

</Directory>

აი ეს ყველაფერი უნდა შეიცვალოს იმით, რაც ზემოთ წერია.

როგორც ხედავთ, კონტეინერი იწყება ტეგით <Directory ...> და მთავრდება </Directory>–ით. მათ შორის მოთავსებულია დირექტივები, და აგრეთვე კომენტარები (რომლებიც ბევრად მეტია, ვიდრე დირექტივები, და ეს არა იმიტომ, რომ ვიღაცას წერა არ ეზარებოდა – საჭიროა გამოვიმუშავოთ მოკლე და მკაფიო, შეძლებისდაგვარად სრული კომენტარების წერა – ეს შემდეგში არა მარტო სხვას, თქვენ თვითონაც გამოგადგებათ).


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

დაბრუნება


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

დაბრუნება



გაითვალისწინეთ:

  • httpd.conf–ში ნებისმიერი ცვლილების შემდეგ Apache უნდა გადატვირთოთ, ისე ეს ცვლილებები ძალაში არ შევა – conf ფაილი იკითხება მხოლოდ სერვისის ჩატვირთვისას.

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

  • httpd.conf–ში აქედან სტრიქონის პირდაპირ კოპირებისას სტრიქონში რატომღაც ჰარი (კოდი 20) იცვლება კოდით A0 (მმართველი სიმბოლო Ctrl-M), რომლებიც არ ჩანს ტექსტურ რედაქტორში, მაგრამ ჩანს Hex–რედაქტორში. არ ვიცი Frontpage-ს ბრალია თუ რისი, მაგრამ ყურადღებით იყავით – თუ რომელიმე დირექტივაში ყველაფერი სწორად წერია, მაგრამ მაინც შეცდომას იძლევა, წაშალეთ საერთოდ და ხელით ჩაწერეთ, ან შესაბამისი სტრიქონი იპოვეთ კომენტარებში და გადააკეთეთ.

  • ნებისმიერი პრობლემის შექმნისას კარგი საკვლევი ინსტრუმენტია Event viewer - იქვე, სადაც სერვისებია. იმდენად ზუსტ დიაგნოზებსა და კონკრეტულ რჩევებს იძლევა, რომ მოულოდნელიც კია MicroSoft–ისაგან არაფრისმთქმელი Help–ებისა და Troubleshooting-ებისა და საერთოდ გაუგებარი სისტემური შეტყობინებების შემდეგ.

  • ფაილური სისტემის მისამართებში დონეების გამყოფად ვინდოუსში იხმარება სიმბოლო "\", *nix–ებში კი "/". მართალია, Apache–ს და PHP–საც ძირითადად ორივე სიმბოლო ესმით, მაგრამ რადგანაც თავიდან ისინი Unix–ისთვის იწერებოდა, მაინც სჯობს სლეშის გამოყენება გაუგებრობების თავიდან ასაცილებლად როგორც httpd.conf, ასევე php.ini–ში:

    ScriptAlias "/php_dir/" "c:/php/"

  • ბევრ საინტერესო რამეს წააწყდებით პროგრამის ინსტალაციისას შექმნილ კატალოგებში მყოფი საკონფიგურაციო და სხვა ფაილების ჩხრეკისას, მაგალითად <...>\Apache Software Foundation\Apache2.2\conf\extra\

  • როცა ჩაიდნის სტადიას გავცდებით (ჩვენი აზრით მაინც:))), უკვე აზრი აქვს httpd.conf–იდან ყველა კომენტარის წაშლას – საჭირო პარამეტრები ასე თუ ისე უკვე ვიცით, ზედმეტი სტრიქონები კი საკმაოდ აძნელებს ფაილში მოძრაობას. ასეთი ფაილების რედაქტირება, როგორც წესი, Notepad-is მსგავსი რედაქტორებით ხდება, მაგრამ როცა რაიმე მასშტაბურ ცვლილებებს ვაკეთებთ, ამის გასაადვილებლად შეიძლება ნებისმიერი მძლავრი რედაქტორის გამოყენება (თუნდაც Find/Replace–სათვის), მხოლოდ შენახვისას არ დაგავიწყდეთ ტექსტურ ფორმატში შენახვა და გაფართოების ( .conf) შენარჩუნება. კარგად კეთდება ყველაფერი Excel-შიც, მაგრამ ზედმეტი ბრჭყალები ჩნდება რატომღაც ტექსტში ხანდახან და მიაქციეთ ყურადღება.

©copyright designed by maxo127

Сайт создан в системе uCoz