Sonunda sadece bunu yapmaya yönelik güzel bir rehber buldum. LAMP yığımı kurmuş olduğumdan attığım adımları anlatacağım ancak öğreticinin tamamı burada bulunabilir .
Yeni için not:
Eğitimde, kök kullanıcıya geçiş yaparak başlar:
sudo su
Benim durumumda sudo
kullanıcıları değiştirmek yerine sadece bu komutları ön ekledim , bu yüzden adımlarımı bu şekilde belgeleyeceğim.
Başla
Birinci adım: Apache Worker MPM'yi (Çok İşlemli Modüller) yükleyin
sudo apt-get install apache2-mpm-worker
Bu, Apache'yi yüklerken varsayılan olan yüklediğim ön orjinalinin yerine geçer.
Adım 2: PHP5 ve gerekli modülleri kurun
sudo apt-get install libapache2-mod-fastcgi php5-fpm php5
Bu noktada 'libapache2-mod-fastcgi' yüklerken bir hatayla karşılaşabilirsiniz:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libapache2-mod-fastcgi is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'libapache2-mod-fastcgi' has no installation candidate
Bu bölüm yukarıdaki derste yer almıyor
Bunu uzlaştırmak için, multiverse
depo apt kaynaklarına eklenmelidir.
Bunu yapmak için:
sudo nano /etc/apt/sources.list
Aşağıdaki satırları eklediğim:
deb http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-updates multiverse
deb http://security.ubuntu.com/ubuntu precise-security multiverse
precise
Bu durumda Ubuntu " Precise Pangolin " versiyonuma atıfta bulunuyor .
Şimdi, bu değişiklikleri kaydedin ve terminale dönün:
sudo apt-get update
ve yeniden:
sudo apt-get install libapache2-mod-fastcgi php5-fpm php5
hangi şimdi çalışacak (gerekir).
Şimdi bu Apache modüllerini etkinleştirin:
sudo a2enmod actions fastcgi alias
apache'yi yeniden başlat
sudo service apache2 restart
Adım 3: Apache yapılandırması
Apache'nin PHP-FPM ile çalışmasını sağlamak için aşağıdaki konfigürasyona ihtiyacımız var:
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
<Directory /usr/lib/cgi-bin>
Require all granted
</Directory>
#directory statement mult be on multiple lines
</IfModule>
Not:
Apache'nin daha eski bir sürümünü kullanıyorsanız (2.3.x veya daha eski), satırdan çıkın.
<Directory /usr/lib/cgi-bin> Require all granted </Directory>
Yüklü versiyonunuzu komutla kontrol edebilirsiniz.
apache2 -version
Bunu, genel Apache konfigürasyonuna koyabilir (böylece tüm vhost'lar için etkindir), örneğin /etc/apache2/conf.d/php5-fpm.conf
(bu dosya mevcut değil, bu yüzden onu oluşturmalısınız) veya PHP-FPM kullanması gereken her vhost'a yerleştirebilirsiniz.
Global rotaya gitmeyi seçiyorum.
sudo nano /etc/apache2/conf.d/php5-fpm.conf
Yukarıdaki kod bloğuna yapıştırın ve kaydedin, çıkın. Bu yeni dosya Apache'nin /etc/apache2/conf.d/
dizindeki tüm dosyaları yükleyen varsayılan konfigürasyonu tarafından otomatik olarak yüklenecektir .
Apache'yi yeniden başlatın:
sudo service apache2 restart
Şimdi aşağıdaki PHP dosyasını belge kökünde oluşturun /var/www
:
sudo nano /var/www/info.php
Eklemek:
<?php phpinfo();
kaydet çık.
Şimdi bu dosyayı bir tarayıcıda çağırıyoruz (örn. http://your-server-ip/info.php
)
Altında Sunucu API üstünde görmeniz gerekir FPM/FastCGI
.
Başarı!
PHP-FPM'yi varsayılan TCP bağlantı noktası yerine bir unix soket kullanmak üzere nasıl değiştireceğiniz veya bunların tümü yerine tek tek sanal ana bilgisayarlar için bunu yapılandıracağınız gibi daha fazla bilgi için, en üste bağlanan kaynak eğitimine bakın.