Pag-install ng isang LAMP na kapaligiran sa Debian at mga derivatives

Ipapaliwanag ng tutorial na ito kung paano mag-install ng isang kapaligiran sa pag-unlad Lampara. Ngunit, ano iyon sa LAMP? Ang LAMP ay maikli para sa Linux + Apache2 + PHP5 + MySQL, iyon ay, isang kapaligiran upang magsulat ng mga script, panatilihin o i-set up ang mga site na ginawa o nakasulat PHP sa MySQL sa isang Apache server.

Ang pagkuha ng iyong mga kamay sa bagay ...

Nag-install kami ng Apache2

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

Pangunahing paggamit ng Apache:

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

Ngayon, paano natin sasabihin sa Apache2 na gamitin ang mga module na na-install namin para dito?

Pag-edit /etc/apache2/apache2.conf at pagdaragdag:

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

Magdagdag ng mga module:

Mahahanap sa / usr / lib / apache2 / modules /

Por ejemplo: mod_rewrite patungan ang mga url upang gawing mas madaling gamitin ang mga ito.

Idagdag sa /etc/apache2/apache2.conf:

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

Ang isang mas matikas na paraan ay maaaring maging, mula sa command terminal paganahin ito sa mga sumusunod na utos:

server@host:# a2enmod rewrite

At pagkatapos ay muling simulan ang Apache:

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

Pag-install / Pag-configure ng PHP5

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

Ilang pagbabago sa PHP 5

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

Mag-upload ng mga file sa server [laki]:

upload_max_filesize = 8M

Paggamit ng memorya:

memory_limit = 32M

Mag-upload ng mga file, pamamaraan ng POST:

post_max_size = 8M

Magsimula, i-restart ang PHP 5?

Ang PHP 5 ay tumatakbo sa system bilang isang module ng Apache2, kaya kung gumawa kami ng ilang pagsasaayos sa PHP5 sa pamamagitan lamang ng pag-restart ng Apache, ang mga ginawang pagbabago ay nalalapat.

Pag-install / Pag-configure ng MySQL

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

Sa panahon ng pag-install, hihilingin sa iyo ang password para sa MySQL root user, para sa mga kadahilanang pangseguridad, subukang gawin itong naiiba mula sa root password ng system.

Pangunahing paggamit ng MySQL:

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

At sa mga setting [/etc/mysql/my.cnf, linya 71 na tinatayang] pinapagana namin ang mga log na hindi nag-aalala:

log  /var/log/mysql/mysql.log

At pagkatapos ay i-restart ang MySQL para magkabisa ang mga pagbabago ...

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

Pag-install / Pag-configure ng PHPMyAdmin

server@host:# apt-get install phpmyadmin

At ang pagsasaayos ay dumating sa config.inc.php file, na wala doon, ngunit gagawin namin ito sa sumusunod na nilalaman:

<?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';
?>

Virtualhosting

Ito ay isang pamamaraan na nagpapahintulot sa paglalathala ng maraming mga website [na may maraming magkakaibang mga pangalan ng domain] sa ilalim ng parehong IP address. Pinapayagan nitong ibahagi ang memory at mga processor na cycle [Hz] nang mas mahusay.

Mga Utos ng Apache2 para sa VirtualHosting:

  • a2ensite: Isaaktibo ang isang website. Dapat ay nasa mga config / etc / apache2 / mga site-magagamit /
  • a2dissite: Huwag paganahin ang isang website.
  • a2enmod: Paganahin ang isang module ng apache na magagamit sa / etc / apache2 / mods-magagamit /
  • a2dismod: I-deactivate ang isang module.

Lumikha ng isang virtualhost

Lumilikha kami ng file ng pagsasaayos ng VirtualHost:

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

Lumilikha kami ng folder kung saan ang website ay ...

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

Pagsasaayos ng 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>

Pinapagana namin ang:

server@host:# a2ensite blog.example.com

At pagkatapos? Oo naman, ang masayang wakas:

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

Nota: Dapat kaming makipag-usap sa aming administrator ng network, kung mas mahusay kami, upang magdagdag ng isang talaan sa DNS na tumuturo sa aming IP na may pangalang "blog". Dapat itong gawin upang mai-redirect ang lahat ng mga botohan ng DNS mula sa blog.example.com sa aming PC.

Pagkatapos ay nagsusulat lamang kami sa aming browser:

http://blog.example.com

At magkakaroon kami ng pag-access sa site na pinag-uusapan.

Nananatili lamang ito upang mai-install ang isang WordPress o isang Drupal sa virtualhost na ito, kung bubuo kami, mula sa simula o isang balangkas.

Iyon lang, makita ka sa ibang oras upang magpatuloy sa pag-install / pag-configure ng mga serbisyo sa mga system ng GNU / Linux.