Ukufaka indawo ye-LAMP ku-Debian nakokuphuma kokunye

Lesi sifundo sizochaza ukuthi ungayifaka kanjani indawo yentuthuko LAMP. Kodwa yini leyo LAMP? ILAMPI lifushane I-Linux + Apache2 + PHP5 + MySQL, okungukuthi, indawo yokubhala imibhalo, ukugcina noma ukusetha amasayithi enziwe noma abhalwe kuwo PHP con MySQL kuseva ye-Apache.

Ukubeka izandla zakho kulolu daba ...

Sifaka i-Apache2

server@host:# apt-get install apache2 apache2-doc

Ukusetshenziswa okuyisisekelo kwe-Apache:

server@host:# /etc/init.d/apache2 {start|stop|restart|reload|force-reload}

Manje, sitshela kanjani i-Apache2 ukuthi isebenzise amamojula esiwafakele wona?

Iyahlela /etc/apache2/apache2.conf nokungeza:

<IfModule dir_module>
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml
</IfModule>

Faka amamojula:

Ingatholakala ku- / usr / lib / apache2 / amamojula /

Isibonelo: I-Mod_Bhala kabusha bhala kabusha ama-url ukuze uwasebenzise kalula.

Faka ku /etc/apache2/apache2.conf:

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

Indlela enhle kakhulu ingaba, kusuka esigungwini somyalo ukuyivumela ngomyalo olandelayo:

server@host:# a2enmod rewrite

Bese uqala kabusha i-Apache:

server@host:# /etc/init.d/apache2 restart

Ukufakwa kwe-PHP5 / Ukucushwa

server@host:# apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Olunye ushintsho ku-PHP 5

En /etc/php5/apache2/php.ini:

Layisha amafayela kuseva [usayizi]:

upload_max_filesize = 8M

Ukusetshenziswa kwememori:

memory_limit = 32M

Layisha amafayela, POST indlela:

post_max_size = 8M

Qala, qala kabusha i-PHP 5?

I-PHP 5 isebenza ohlelweni njengemodyuli ye-Apache2, ngakho-ke uma senza ukumisa okuthile ku-PHP5 ngokuqala kabusha i-Apache, izinguquko ezenziwe ziyasetshenziswa.

Ukufakwa / Ukucushwa kwe-MySQL

server@host:# apt-get install mysql-server

Ngesikhathi sokufakwa, uzocelwa iphasiwedi yomsebenzisi wezimpande ze-MySQL, ngenxa yezizathu zokuphepha, zama ukulenza lihluke kwiphasiwedi yezimpande zohlelo.

Ukusetshenziswa okuyisisekelo kwe-MySQL:

server@host:# /etc/init.d/mysql {start|stop|restart|reload|force-reload|status}

Futhi kuzilungiselelo [/etc/mysql/my.cnf, umugqa 71 cishe] sikwazi izingodo ukuthi zingavumeli:

log  /var/log/mysql/mysql.log

Bese ngiqala kabusha i-MySQL ukuze ushintsho luqale ukusebenza ...

server@host:# /etc/init.d/mysql restart

Ukufaka / Ukucushwa kwe-PHPMyAdmin

server@host:# apt-get install phpmyadmin

Futhi ukumiswa kuza kufayela le-config.inc.php, elingekho, kepha sizokudala ngokuqukethwe okulandelayo:

<?php
$cfg['blowfish_secret'] = 'phpmyadmin';
$i = 0;
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>

I-Virtualhosting

Kuyindlela evumela ukushicilelwa kwamawebhusayithi amaningi [anamagama wesizinda ahlukahlukene] ngaphansi kwekheli elifanayo le-IP. Ikuvumela ukuthi wabelane ngemijikelezo yememori neprosesa [Hz] ngokuyimpumelelo.

Imiyalo ye-Apache2 ye-VirtualHosting:

  • a2ensite: Cupha iwebhusayithi. Ukulungiswa kufanele kube ku / etc / apache2 / sites-available /
  • a2dissite: Yenza iwebhusayithi ingasebenzi.
  • a2enmod: Yenza kusebenze imodyuli ye-Apache etholakala ku- / etc / apache2 / mods-available /
  • i-a2dismod: Yenza kungasebenzi i-module.

Dala i-virtualhost

Sakha ifayela lokumisa le-VirtualHost:

server@host:# cd /etc/apache2/sites-available/
server@host:/etc/apache2/sites-available# touch blog.example.com

Sakha ifolda lapho iwebhusayithi izoba khona ...

server@host:# mkdir -p /var/www/blog/

Ukumiswa kwe-Blog.example.com:

<VirtualHost *:80>
ServerAdmin admin@blog.example.com
ServerName blog.example.com
DocumentRoot /var/www/blog/
# HTML documents, with indexing.
<Directory />
Options +Includes
</Directory>
</VirtualHost>

Sivumela:

server@host:# a2ensite blog.example.com

Bese? Impela, isiphetho esijabulisayo:

server@host:# /etc/init.d/apache2 restart

Note: Kumele sikhulume nomphathi wenethiwekhi yethu, uma singcono, ukufaka irekhodi ku-DNS elikhombisa i-IP yethu enegama "blog”. Lokhu kufanele kwenziwe ukuqondisa kabusha wonke amapholi we-DNS kusuka ku-blog.example.com kuya kwi-PC yethu.

Ngemuva kwalokho sibhala nje kusiphequluli sethu:

http://blog.example.com

Futhi sizokwazi ukufinyelela kusayithi okukhulunywa ngalo.

Kuhlala kuphela ukufaka i-WordPress noma i-Drupal kule virtualhost, uma sizokwakha, kusuka ekuqaleni noma uhlaka.

Yilokho kuphela, ukukubona ngesinye isikhathi ukuqhubeka nokufaka / ukulungisa izinsizakalo ezinhlelweni ze-GNU / Linux.