यस लेखमा, हामी तपाईंलाई Linux चलाउने सर्भरमा वेब वातावरण कसरी कन्फिगर गर्ने भन्ने बारे चरण-दर-चरण निर्देशनहरू दिनेछौं। सबैभन्दा पहिले, तपाईंले बुझ्नु आवश्यक छ कि एक सामान्य वेब सर्भरमा केही अन्तरक्रियात्मक घटकहरू हुन्छन्:
- HTTP सर्भर
- प्रोग्रामिङ भाषा अनुवादक
- डाटाबेस व्यवस्थापन प्रणाली (DBMS)
आफ्नो वेबसाइट व्यवस्थापन गर्न तपाईंले सामग्री व्यवस्थापन प्रणाली (CMS), डाटाबेस व्यवस्थापनको लागि वेब इन्टरफेस, र FTP पहुँच पनि सेटअप गर्नुपर्नेछ।
Linux मा धेरै लोकप्रिय कन्फिगरेसन Apache-PHP-MySQL(MariaDB) सेटअप गर्ने विचार गरौं। हामी vsftpd ftp सर्भर, phpMyAdmin - डाटाबेस व्यवस्थापनको लागि वेब इन्टरफेस, र सामग्री व्यवस्थापन प्रणाली WordPress पनि स्थापना गर्नेछौं।
सुरु गर्न कृपया VPS सर्भर वा समर्पित सर्भर अर्डर गर्नुहोस् । उदाहरणका लागि हामीले Ubuntu सर्भर १८.०४ चलाउने स्थिर IP ठेगाना भएको भर्चुअल सर्भर प्रयोग गर्यौं। सबै आदेशहरू रूट प्रयोगकर्ताद्वारा सञ्चालित थिए।
अपाचे HTTP सर्भर कन्फिगरेसन
1। स्थापना
apt install apache2
स्थापना समाप्त भएपछि, ब्राउजर खोल्नुहोस् र “http://[server's_ip_address]” जाँच गर्नुहोस्।
यदि तपाईंले माथिको स्क्रिनसटमा यस्तो स्वागत पृष्ठ देख्नुभयो भने, यसको अर्थ तपाईंको HTTP सर्भरले काम गरिरहेको छ।
२. परीक्षण पृष्ठ सिर्जना गर्नुहोस्
वेबसाइटको लागि पूर्वनिर्धारित रूट डाइरेक्टरी "/var/www/html" हो। यो त्यो ठाउँ हो जहाँ तपाईंले भर्खरै देख्नुभएको स्वागत पृष्ठ फेला पार्न सक्नुहुन्छ। भर्चुअल होस्टहरूको लागि छुट्टै डाइरेक्टरी "/var/www/sites" र तपाईंको परीक्षण वेबसाइटको अनुक्रमणिका पृष्ठको साथ एउटा सबफोल्डर "/var/www/sites/site1" सिर्जना गरौं ।
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
नतिजामा “/var/www/sites/site1/index.html” फाइलमा html कोडको केवल एक लाइन हुनुपर्छ:
<H1>Welcome</H1>
३. अपाचे सर्भर कन्फिगरेसन
वेबसाइटहरूको कन्फिगरेसन फाइलहरू “/etc/apache2/sites-available/” क्याटलगमा छन्। “000-default.conf” फाइलबाट पूर्वनिर्धारित कन्फिगरेसनलाई आधारको रूपमा लिई नयाँ भर्चुअल होस्टको लागि कन्फिगरेसन फाइल सिर्जना गरौं।
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
"site1.conf" फाइल खोल्नुहोस् र "DocumentRoot" विशेषता परिवर्तन गर्नुहोस्। तपाईंको वेबसाइटको पथलाई मानको रूपमा राख्नुहोस्, त्यसैले हाम्रो अवस्थामा यो "/var/www/sites/site1" हो।
यस चरणमा हामीलाई धेरै वेबसाइटहरूको एकैसाथ सञ्चालन कन्फिगर गर्न आवश्यक छैन, त्यसैले हामी पूर्वनिर्धारित वेबसाइटलाई असक्षम पार्न र नयाँ साइट सक्षम गर्न सक्छौं। परिवर्तनहरू लागू गर्न सर्भर कन्फिगरेसन पुन: लोड गर्नुहोस्।
a2dissite 000-default
a2ensite site1
systemctl reload apache2
“http://[server's _ip_address]” लिङ्क फेरि खोल्नुहोस् र पूर्वनिर्धारित स्वागत पृष्ठको सट्टा हाम्रो नयाँ पृष्ठ छ भनी सुनिश्चित गर्नुहोस्।
हामीले हाम्रो HTTP सर्भरको कन्फिगरेसन पूरा गर्यौं र हामी अर्को चरणमा जान सक्छौं।
FTP सर्भर कन्फिगरेसन
1। स्थापना
हाम्रो ftp सर्भर र एउटा अतिरिक्त प्याकेज “db-util” स्थापना गरौं , जुन हामीलाई भर्चुअल प्रयोगकर्ताहरू कन्फिगर गर्न आवश्यक पर्नेछ।
apt install vsftpd db-util
२. स्थानीय खाता सिर्जना गर्नुहोस्
vsftpd सर्भरले हामीलाई पहुँच अनुमतिहरू धेरै लचिलो तरिकाले कन्फिगर गर्न अनुमति दिन्छ। हाम्रा कार्यहरूको लागि हामीले ftp प्रयोगकर्ताहरूलाई निम्न कुराहरू प्रदान गर्न आवश्यक छ:
- को सामग्रीहरूमा पूर्ण पहुँच "/var/www/साइटहरू/";
- माथिका सबै असक्षम पार्नुहोस् "/var/www/";
- भर्चुअल खातासँग जडान;
लगइन अनुमति बिना तर गृह फोल्डर "/var/www/" मा पहुँच सहितको स्थानीय खाता "भर्चुअल" सिर्जना गर्नुहोस् । यो खाता ftp प्रयोगकर्ताहरूले सर्भरमा जडान गर्न प्रयोग गर्नेछन्।
useradd -d /var/www virtual
"Root" पूर्वनिर्धारित रूपमा "/var/www" फोल्डरको मालिक हुनेछ । ftp प्रयोगकर्ताहरूलाई वेबसाइटहरूको सामग्री परिमार्जन गर्न सक्षम बनाउन, "virtual" को सबफोल्डरहरू सहित "/var/www/sites/" को मालिक परिवर्तन गरौं ।
chown -R virtual:root /var/www/sites
फलस्वरूप, प्रयोगकर्ता "भर्चुअल" ले "/var/www/" को सामग्री हेर्न र "/var/www/sites/" सबफोल्डरमा लेख्न सक्षम हुनेछ।
3। कन्फिगरेसन
मुख्य कन्फिगरेसन "/etc/vsftpd.conf" फाइलमा छ , त्यसैले यसलाई खोलौं र निम्नानुसार सम्पादन गरौं:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
४. डाटाबेस सिर्जना गर्नुहोस्
भर्चुअल खाताहरूको डेटा भण्डारण गर्न तपाईंलाई डाटाबेस चाहिन्छ।
पहिले, गृह फोल्डरमा एउटा साधारण टेक्स्ट फाइल "users.txt" सिर्जना गरौं र भर्चुअल प्रयोगकर्ताहरूको पहुँच विवरणहरू (लगइन र पासवर्ड) प्रत्येक अर्को लाइनमा बचत गरौं। उदाहरणका लागि, हामीलाई लगइन "ftp" र पासवर्ड "Qwe123" भएको भर्चुअल प्रयोगकर्ता चाहिन्छ । त्यसपछि फाइल यस्तो देखिनेछ:
ftp
Qwe123
डाटाबेस सिर्जना गरौं
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
पूर्वनिर्धारित PAM फाइल “/etc/pam.d/vsftp” लाई निम्नानुसार परिमार्जन गरौं :
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
कृपया ध्यान दिनुहोस् कि “pam_userdb.so” लाइब्रेरीको मार्ग फरक हुन सक्छ तर आवश्यक परेमा तपाईं यसलाई परिवर्तन गर्न सक्नुहुन्छ।
परिवर्तनहरू लागू गर्न vsftpd सर्भर पुन: लोड गर्नुहोस्।
systemctl restart vsftpd
हामीले FTP सर्भर कन्फिगर गर्ने काम पूरा गर्यौं।
जडान विवरण:
- ftp:// [सर्भरको_ip_ठेगाना]
- लगइन: ftp
- पासवर्ड: Qwe123
PHP सर्भर कन्फिगरेसन
१. PHP को स्थापना
आज PHP को पछिल्लो स्थिर संस्करण php 7.4.5 हो जुन आधिकारिक Ubuntu भण्डारहरूमा समावेश छैन। तेस्रो-पक्ष भण्डार जडान गरौं र PHP को पछिल्लो संस्करण स्थापना गरौं।
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
१० जाँच गर्नुहोस्
PHP लाई कार्यान्वयन गर्न वेब पेज फाइलमा “.php” एक्सटेन्सन हुनुपर्छ। हाम्रो परीक्षण पृष्ठको नाम परिवर्तन गरौं:
cd /var/www/sites/site1/
mv index.html index.php
"/var/www/sites/site1/index.php" फाइलमा निम्न php लाइन थप्नुहोस् , ताकि फाइल यस्तो देखियोस्:
<H1>Welcome</H1>
<?php
phpinfo();
?>
परिवर्तनहरू बचत गर्नुहोस् र ब्राउजरमा नतिजा जाँच गर्नुहोस्।
यदि तपाईंले “phpinfo()” फंक्शनको नतिजा देख्नुभयो भने , PHP इन्टरप्रेटरले राम्रोसँग काम गरिरहेको छ। अब अर्को चरणमा जाऔं।
MySQL (MariaDB) कन्फिगरेसन
1। स्थापना
MySQL को लागि MariaDB र PHP मोड्युल स्थापना गरौं र त्यसपछि Apache पुन: लोड गरौं।
apt install mariadb-server php-mysql
systemctl restart apache2
परीक्षण पृष्ठ रिफ्रेस गर्नुहोस् र PHP कन्फिगरेसन तालिकामा रहेको PDO खण्डमा जानुहोस्। यदि तपाईंले “PDO_mysql” खण्ड फेला पार्न सक्नुहुन्छ भने , यसको अर्थ Mysql को लागि ड्राइभर सही रूपमा स्थापना भएको छ।
त्यसपछि हामीले MariaDB को प्रारम्भिक सुरक्षा कन्फिगरेसन गर्नुपर्नेछ र "रूट" प्रयोगकर्ताको लागि पासवर्ड सेट गर्नुपर्नेछ, रिमोट पहुँच असक्षम गर्नुपर्नेछ, र सबै अतिथि खाताहरू मेटाउनुपर्नेछ।
mysql_secure_installation
पहिलो चरणमा, हामीले DBMS पहुँच गर्न "root" प्रयोगकर्ताको पासवर्ड प्रविष्ट गर्नुपर्छ वा पासवर्ड नभएमा Enter थिच्नुपर्छ। स्थापना पछि "root" प्रयोगकर्ताको लागि कुनै पासवर्ड सेट नभएको हुनाले, केवल "Enter" थिच्नुहोस् ।
कृपया ध्यान दिनुहोस् कि MariaDB मा पहिले नै आफ्नै खाताहरू छन् जसको OS खाताहरूसँग कुनै सम्बन्ध छैन। त्यसैले MariaDB मा हामीले व्यवहार गर्ने एक मात्र प्रयोगकर्ता "root" हो ।
त्यसपछि, कन्फिगरेटरले हामीलाई रूट प्रयोगकर्ताको लागि पासवर्ड सेट गर्न सोध्नेछ। पुष्टि गर्न "Y" टाइप गर्नुहोस् र नयाँ पासवर्ड प्रविष्ट गर्नुहोस्। हाम्रो अवस्थामा, यो "Qwe123" हो।
बाँकी सबै प्रश्नहरूको उत्तर अन्त्यसम्म "Y" दिनुहोस्।
कन्फिगरेसन सकियो!
MariaDB पहुँच विवरणहरू:
- लगइन: रूट
- पासवर्ड: Qwe123
phpMyAdmin कन्फिगरेसन
1। स्थापना
PHP को लागि आवश्यक एक्सटेन्सन स्थापना गरौं - mbstring ।
apt install php-mbstring
आधिकारिक भण्डारमा phpMyAdmin को पुरानो संस्करण मात्र छ, त्यसैले नयाँ म्यानुअली स्थापना गरौं।
परियोजनाको आधिकारिक वेबसाइट " https://www.phpmyadmin.net/ " खोल्नुहोस् र पछिल्लो संग्रह डाउनलोड गर्नुहोस्।
कुनै पनि ftp क्लाइन्ट प्रयोग गरेर "/var/www/sites/" फोल्डरमा रहेको सर्भरमा अभिलेख प्रतिलिपि गर्नुहोस् ।
फोल्डरलाई अनअर्काइभ गर्नुहोस् र यसलाई "phpMyAdmin" मा पुन: नामाकरण गर्नुहोस्। "unzip" उपयोगिता स्थापना गर्न नबिर्सनुहोस् । तपाईंले अनअर्काइभ गरेपछि अभिलेख मेटाउन सक्नुहुन्छ।
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
अस्थायी फाइलहरूको लागि निम्न फोल्डर "/var/www/sites/phpMyAdmin/tmp" सिर्जना गर्नुहोस् र सबैको लागि पहुँच सक्षम गर्नुहोस्। यदि तपाईंले यो गर्नुभएन भने, phpMyAdmin ले अस्थायी फोल्डरमा पहुँच अस्वीकार गरिएको रिपोर्ट गर्नेछ।
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. उपनाम सिर्जना गर्नुहोस्
phpMyAdmin छुट्टै भर्चुअल होस्ट नभएकोले र रूट डाइरेक्टरी बाहिर अवस्थित भएकोले, उपनाम कन्फिगर गरौं।
“/etc/apache2/mods-available/alias.conf” फाइल खोल्नुहोस् र यो लाइन थप्नुहोस्:
Alias /pma “/var/www/sites/phpMyAdmin"
यस खण्ड भित्र:
<IfModule alias_module>
</IfModule>
परिवर्तनहरू लागू गर्न Apache पुन: लोड गर्नुहोस्।
systemctl reload apache2
उपनाम सेट गरिएको छ, त्यसैले हामी यहाँ phpMyAdmin पहुँच गर्न सक्छौं “http://[server's_ip_address]/pma”।
The. डाटाबेस तैयार गर्नुहोस्
हामीले MariaDB को प्रारम्भिक कन्फिगरेसनको समयमा रूट प्रयोगकर्ता प्रयोग गर्न प्रतिबन्ध लगाएको हुनाले, हामीले phpMyAdmin पहुँच गर्न प्रयोग गरिने सबै अनुमतिहरू सहितको नयाँ खाता सिर्जना गर्नुपर्नेछ।
यसका साथै, phpMyAdmin का थप सुविधाहरू सक्षम गर्न हामीलाई सेवा डाटाबेस र यसलाई पहुँच गर्न खाता चाहिन्छ।
खाताहरू सिर्जना गरौं
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
कृपया ध्यान दिनुहोस् कि दोस्रो अनुरोधमा रहेको डाटाबेस नाम पछाडिको स्पार्कमा छ “… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY…”,
नतिजामा, MariaDB मा दुई खाताहरू सिर्जना हुनेछन्:
- लगइन: pma, पासवर्ड: Qwe123 पूर्ण पहुँच, phpMyAdmin मा लग इन गर्न प्रयोग गरिनेछ।
- लगइन: pmaservice, पासवर्ड: Qwe123अतिरिक्त सुविधाहरूले काम गर्नको लागि सेवा खाता आवश्यक पर्दछ।
अर्को चरणमा, हामी यी विवरणहरू कन्फिगरेसन फाइल "config.inc.php" मा सेट गर्नेछौं ।
त्यसपछि हामीले “phpMyAdmin/sql/create_tables.sql” फाइलबाट डाटाबेस आयात गर्नुपर्नेछ ।
phpMyAdmin को मद्दतले यसलाई आयात गरौं।
“http://[server's_ip_address]/pma” लिङ्क खोल्नुहोस्।
लगइन “pma” र पासवर्ड “Qwe123” प्रविष्ट गर्नुहोस्।
“Import” मा जानुहोस् , “Select file” मा क्लिक गर्नुहोस् र phpMyAdmin को रूट डाइरेक्टरीमा रहेको “sql/create_tables.sql” फाइल चयन गर्नुहोस् । तपाईंको PC मा फाइलहरू भएको “phpMyAdmin” फोल्डर हुनुपर्छ । आवश्यक परेमा यसलाई अनअर्काइभ गर्नुहोस्।
आयात सुरु गर्न "अर्को" मा क्लिक गर्नुहोस् ।
4। कन्फिगरेसन
टेम्प्लेटबाट कन्फिगरेसन फाइल प्रतिलिपि गरौं।
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
कन्फिगरेसन फाइल “/var/www/sites/phpMyAdmin/config.inc.php” खोलौं र निम्न परिवर्तनहरू गरौं:
"$cfg['blowfish_secret']" विशेषताको लागि अनियमित ३२-अक्षरको मान सेट गर्नुहोस् । यसको लागि कुनै पनि पासवर्ड जेनेरेटर प्रयोग गर्नुहोस्।
"phpMyAdmin कन्फिगरेसन भण्डारण सेटिंग्स" खण्डका सबै लाइनहरूबाट टिप्पणी हटाउनुहोस् र "controluser" र "controlpass" विशेषताहरूको लागि MariaDB को सेवा खाताको लगइन र पासवर्ड तदनुसार सेट गर्नुहोस्। हाम्रो अवस्थामा, यो pmaservice र Qwe123 हो ।
परिवर्तनहरू बचत गर्नुहोस्।
phpMyadmin को लागि पहुँच विवरणहरू:
- http://[server’s_ip_address]/pma/
- लगइन: pma
- पासवर्ड: Qwe123
लिनक्स सर्भरमा WordPress कसरी स्थापना र कन्फिगर गर्ने
१. वर्डप्रेस प्याकेज र फाइलहरूको प्लेसमेन्ट
आधिकारिक WP वेबसाइट “ https://ru.wordpress.org/ ” मा जानुहोस् र आफ्नो स्थानीय पीसीमा अभिलेख डाउनलोड गर्नुहोस्।
"/var/www/sites/" फोल्डरमा सर्भरमा अभिलेख अपलोड गर्नुहोस् र "wordpress " फोल्डरमा अनअभिलेख गर्नुहोस् ।
“/var/www/sites/ site1/” वेबसाइटको “/var/www/sites/ wordpress/” रूट फोल्डरको सामग्री प्रतिलिपि गर्नुहोस् ।
हामीले रूट अनुमतिहरू सहित कन्सोल मार्फत फाइलहरू प्रतिलिपि गरेको हुनाले, "/var/www/sites/" फोल्डरको मालिकलाई "virtual" को सामग्री सहित परिवर्तन गरौं । क्लाइन्ट मार्फत ftp जडानको लागि पूर्ण पहुँच सक्षम गर्न यो आवश्यक छ।
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
२. WordPress को लागि डाटाबेस सिर्जना गर्नुहोस्
phpMyAdmin मा लग इन गर्नुहोस् र "Create database" मा क्लिक गर्नुहोस्। हाम्रो अवस्थामा "wordpress_db" मा, एउटा मनमानी डाटाबेस नाम निर्दिष्ट गर्नुहोस् र "Create" बटनमा क्लिक गर्नुहोस्।
बायाँ खण्डमा नयाँ डाटाबेस चयन गर्नुहोस् र "विशेषाधिकार" मा क्लिक गर्नुहोस्।
त्यसपछि "प्रयोगकर्ता खाता थप्नुहोस्" मा क्लिक गर्नुहोस् ।
खोलिएको विन्डोमा लगइन र पासवर्ड ( wpservice / Qwe123 ) प्रविष्ट गर्नुहोस्, "Grant all privileges in the wordpress_db" जाँच गर्नुहोस् र "Next" मा क्लिक गर्नुहोस्।
अर्को पृष्ठमा डाटाबेस स्तरमा सबै विशेषाधिकारहरू रिसेट गर्न "सबै रद्द गर्नुहोस्" मा क्लिक गर्नुहोस् र "अर्को" मा क्लिक गर्नुहोस् ।
३. लिनक्स सर्भरमा वर्डप्रेस कन्फिगरेसन
तपाईंको वेबसाइटको रूट डाइरेक्टरीमा जानुहोस् र टेम्प्लेटबाट कन्फिगरेसन फाइल प्रतिलिपि गर्नुहोस्।
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
“wp-config.php” फाइल खोल्नुहोस् र अघिल्लो चरणमा सिर्जना गरिएको डाटाबेस जडान प्यारामिटरहरू प्रविष्ट गर्नुहोस् र परिवर्तनहरू बचत गर्नुहोस्।
४. CMS WordPress स्थापना गर्नुहोस्
"http://[server's_ip_address]/wp-admin/install.php" ब्राउजरमा निम्न लिङ्क खोल्नुहोस् ।
सबै फिल्डहरू भर्नुहोस् र "WordPress स्थापना गर्नुहोस्" मा क्लिक गर्नुहोस् । अनियमित प्रयोगकर्ता नाम र पासवर्ड सेट गर्नुहोस्। हाम्रो अवस्थामा, यो wpadmin र Qwe123 तदनुसार हो।
यी विवरणहरू WordPress पहुँच गर्न प्रयोग गरिनेछ।
स्थापना समाप्त भएपछि, "http://[server's_ip_address]/wp-login.php" लिङ्क खोल्नुहोस् , पहुँच विवरणहरू प्रविष्ट गर्नुहोस्, र WordPress मा लग इन गर्नुहोस्।
तपाईंले मुख्य पृष्ठमा WordPress टेम्प्लेटहरू मध्ये एक देख्नुपर्छ।
कन्फिगरेसन समाप्त भयो।
WordPress पहुँच विवरणहरू:
- http://[server’s_ip_address]/wp-login.php
- लगइन: wpadmin
- पासवर्ड: Qwe123