სერვერ
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. ყოველ
მათგანში შევქმნათ ორი კატალოგი და ორი ცარიელი ფაილი:
www – html–დოკუმენტებისათვის
cgi
– cgi–სკრიპტების შესანახად
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-შიც, მაგრამ ზედმეტი
ბრჭყალები ჩნდება რატომღაც ტექსტში ხანდახან და მიაქციეთ ყურადღება.
|