Apache PHP MYSQL Kurmak

LAMP (Linux Apache Mysql PHP) kurulup bazı ayarların yapılması

Komut Sisteminden:

Bu belgede Ubuntu altında Apache2,PHP 4 (ve 5), ve MySQL 4.1 ile aynı zamanda Java desteği ile gelen Apache Tomcat 5 içeren LAMP (Linux-Apache-MySQL-PHP) kurulumu ve yapılandırılması anlatılacaktır.

 

Depoların kontrol edilmesi

Apache'nin kurulabilmesi için Universe depolarının aktif olması lazım.

 

Apache 2 kurulumu

sudo aptitude install apache2

 

PHP 4 kurulumu

sudo aptitude install php4

 

Hata çözümü

Eğer apache kurduktan sonra yine de php dosyalarını yorumlayamıyorsa, libapache2-mod-php4 paketini kurun. Normalde php4'ü kurduğunuzda beraber gelmesi lazım, ancak bazı kullanıcılar kurulmadığını belirtiyorlar. Ayrıca bunu aktif hale getirmek için

sudo a2enmod php4

komutunu da kullanmanız gerekiyor.

 

PHP 5 kurulumu

sudo aptitude install php5

Daha Sonra http://localhost/deneme.php Şeklinde Yazdığınızda php dosyasının çalışabilmesi için yetki vermelisiniz bunun için

nano /etc/apache2/apache2.conf yazıp

User www-data Group www-data

Kısmını kendinize göre değiştirin

User salih Group salih

Gibi

MySQL kurulumu (PHP 4 ile)

sudo aptitude install mysql-server
sudo aptitude install libapache2-mod-auth-mysql
sudo aptitude install php4-mysql

Eğer güçlü ve güzel bir grafiksel arabirim isterseniz phpmyadmin programını kurabilirsiniz.

sudo aptitude install phpmyadmin

Eğer phpmyadmin'i çalıştrmaya kalktığınızda blowfish_secret hatası alıyorsanız :

/etc/phpmyadmin/blowfish_secret.inc.php dosyasının içinden kriptografi için bir parola bulun ve bu parolayı içeren satırı (php için olan kısmı değil) /etc/phpmyadmin/config.inc.php dosyasının içine kopyalayın. Aksi takdirde sürekli bu hatayı alırsınız.

Eğer parolayı kopyalamanıza rağmen hala hata alıyorsanız, sistemi yeniden başlatın.

Mysql basit bir grafiksel arabirime de sahip, her ne kadar çok işlevsel olmasa da deneyebilirsiniz:

sudo aptitude install mysql-admin

MySQL kurulumu (PHP 5 ile)

sudo aptitude install mysql-server
sudo aptitude install libapache2-mod-auth-mysql
sudo aptitude install php5-mysql

Eğer güçlü ve güzel bir grafiksel arabirim isterseniz phpmyadmin programını kurabilirsiniz.

sudo aptitude install phpmyadmin

Eğer phpmyadmin'i çalıştrmaya kalktığınızda blowfish_secret hatası alıyorsanız :

/etc/phpmyadmin/blowfish_secret.inc.php dosyasının içinden kriptografi için bir parola bulun ve bu parolayı içeren satırı (php için olan kısmı değil) /etc/phpmyadmin/config.inc.php dosyasının içine kopyalayın. Aksi takdirde sürekli bu hatayı alırsınız.

Not: Ben ne yazık ki sistemi yeniden başlatmadan bunu etkin hale getiremedim. Sistem tekrar başlatıldığında, hata ortadan kayboldu.

Mysql basit bir grafiksel arabirime de sahip, her ne kadar çok işlevsel olmasa da deneyebilirsiniz:

sudo aptitude install mysql-admin

MySQL kurulum sonrası ayarları

Standart yapılandırma için şu komutları verin:

cd /usr
sudo ./bin/mysql_install_db --user=mysql

Veri tabanına ilk defa erişmek için şu komutu verin:

sudo mysql -u root

Mysql konsolunda root kullanıcısı için şu komutu verin (mysql> kısımları yazılmadan):

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('kendi_parolanız');

Yeni bir kullanıcı oluşturmak için şu komutu verin:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'kullanıcı_adınız'@'localhost' IDENTIFIED BY 'kendi_parolanız' WITH GRANT OPTION; 

mysql konsolundan çıkmak için:

mysql> q

Apache yapılandırılması

Şu an kullandığınız kullanıcının PHP sayfalarının yöneticisi olmasını isteyebilirsiniz. Bunun için Apache yapılandırma dosyasını düzenlemelisiniz.

gksudo "gedit /etc/apache2/apache2.conf"

Bu dosyada User ve Group bölümlerini bulup kullanıcı isminiz ve ait olduğu grubu yazın. Apache'yi yeniden başlatmanız gerekir (aşağıda anlatılacaktır).

Kullanıcı web siteleri (localhost/~kullanıcı_adı ile ulaşılan) ile ilgili ayarlar /etc/apache2/mods-enabled/userdir.conf dosyasındadır.

MySQL ile çalışmak için PHP yapılandırılmasını düzenlemek

PHP ve MySQL'in iletişim sağlayabilmeleri için PHP yapılandırma dosyasını düzenlemeniz lazım:

gksudo "gedit /etc/php4/apache2/php.ini"

eğer PHP5 kullanıyorsanız:

gksudo "gedit /etc/php5/apache2/php.ini"

;extension=mysql.so satırının önündeki ; karakterini kaldırın ve Apache'yi yeniden başlatın.

Apache'nin başlatılması, durdurulması ve yeniden başlatılması

Apache'yi başlatmak için şu komutu kullanın:

sudo /usr/sbin/apache2ctl start

Durdurmak için:

sudo /usr/sbin/apache2ctl stop

Yeniden başlatmak için:

sudo /usr/sbin/apache2ctl restart

Apache'nin kullanılması

Apache'ye ulaşmak için internet gezgininizin adres çubuğuna 127.0.0.1 (ön tanımlı olarak port 80 kullanılır) yazmanız yeterli. Öntanımlı olarak Apache sunucu sayfaları /var/www dizininde bulunur.

Durum

PHP kurulum durumunuzu kontrol etmek için:

gksudo "gedit /var/www/testphp.php"

komutu ile yeni bir dosya oluşturun ve içine şunu yazın:

<?php phpinfo(); ?>

Daha sonra gezgininizde http://localhost/testphp yazarak PHP bilgilerinizi görün. Bu sayfada kurmuş olduğunuz PHP sürümü ile bilgiler olması gerekir. Eğer hiç bir şey göremiyorsanız, buraya kadar yaptığınız adımları kontrol edin.

Apache güvenliği

Eğer Apacheyi sadece geliştirme amaçlı kullanıyorsanız, örneğin sadece evinizde, dışardan gelen bağlantılar için dinlenilmesini engelleyebilirsiniz.Bunun için

gksudo "gedit /etc/apache2/ports.conf"

komutu ile gerekli dosyayı açın ve içindeki satırı şu şekilde değiştirin:

Listen 127.0.0.1:80

Dosyayı kaydedin ve Apache'yi yeniden çalıştırın. Böylece Apache sadece kendi bilgisayarınızda çalışacaktır.

Bir dizini .htaccess kullanarak parola-korumalı hale getirmek

Parola ile korumak istediğinizi dizinin altında .htaccess isminde (başındaki noktaya dikkat) bir dosya oluşturun ve içine:

AuthUserFile /your/path/.htpasswd
AuthName "Authorization Required"
AuthType Basic
require valid-user

satırlarını ekleyin. Burada valid-user yerine doğrudan kullanıcıları da ekleyebilirsiniz.

Eğer bir dizinin içindeki tek bir dosyayı parola-korumalı hale getirmek istiyorsanız:

<Files "mypage.html">
 Require valid-user
</Files>

satırlarını ekleyin.

Daha sonra /istenilen/dizin/.htpasswd dosyasını oluşturun. Bu dosya bizim izin verdiğimiz kullanıcıları ve parolalarını içerecek. Bu dosyayı oluşturmak için htpasswd komutunu kullanıyoruz:

htpasswd -c /istenilen/dizin/.htpasswd kullanıcı1

-c etiketi sadece bu dosya ilk defa oluşturulduğunda kullanılır. Bu dosyaya diğer başka kullanıcılar eklemek için birinci seferden sonra -c etiketini kullanmamalısınız,böylece dosyanın devamına bir kullanıcı eklenir. Aksi takdirde dosya sıfırlanacaktır.

Bu dosyanın çok güvenli bir yerde saklanması gerekir. Örneğin sadece web sunucunun okuyabileceği bir yerde.

Daha sonra /etc/apache2/apache2.conf dosyasına şu satırları eklemeliyiz:

<Directory /istenilen/dizin>
AllowOverride All
</Directory>

Sadece /istenilen/dizin/.htpasswd ayarlaması yapmalısınız. Daha sonra tekrar Apache'yi başlatın.

Hata çözümü

Eğer sayfalarınıza ulaşamaıyorsanız kullanıcı ismi ve parolanızı doğru girin. Hala çalışmıyorsa .htpasswd dosyanızın yolunu kontrol edin. Ayrıca AuthUserFile directive ile belirtilen yolun doğru tanımlandığına emin olun. Aynı zamanda .htpasswd ve .htaccess dosyalarının sunucu kullanıcısı tarafından okunabilir olması lazım.

chmod 0644

komutu ile bu hatayı giderebilirsiniz.

Örnek

Aşağıda kullanıcıların bir dizine erişimini kapatan, belirlenen bir dosyayı parola-korumalı hale getiren ve belirlenen bir dosyanın kullanıclar tarafından görülebilir kılan bir örnek var:

AuthUserFile /your/path/.htpasswd
AuthName "Authorization Required"
AuthType Basic
Order Allow,Deny
<Files myfile1.html>
 Order Allow,Deny
 require valid-user
</Files>

<Files myfile2.html>
 Order Deny,Allow
</Files>

Apache Tomcat 5

Jakarta Tomcat bir Java servlet taşıyıcısıdır ve Apache Tomcat adı altında Apache ailesine dahil edilmiştir. Aşağıdaki adımları takip ederek kurabilirsiniz.

Apache Tomcat kurulumundan önceki adım

  • Java edinin. (sdk değil jdk)
sudo apt-get install sun-java5-jdk
  • Java çevresel ayarlarını yapılandırın
export JAVA_HOME="java home dizininiz"
export PATH=$PATH:$JAVA_HOME/bin

Şuan depolarda ki sun-jdk'nın mevcut sürümü için örnek komut:

export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.06
export PATH=$PATH:$JAVA_HOME/bin

Apache Tomcat kurulumu

sudo aptitude install tomcat5 tomcat5-admin tomcat5-webapps

Apache Tomcat'in başlatılması, durdurulması ve yeniden başlatılması

sudo /etc/init.d/tomcat5 start
sudo /etc/init.d/tomcat5 stop
sudo /etc/init.d/tomcat5 restart

Tomcat5'i kullanmak

Eğer yukardaki adımları doğru yaptıysanız Tomcat'i aşağıdaki ip ile çalışırken görebilirsiniz.

127.0.0.1:8180


herhangi bir sorunda :

sudo gedit /etc/default/tomcat5 

komutu ile açılan tomcat ayarlarında ki #JAVA_HOME satırı aşağıdaki şekli almış olmalıdır.

... 
JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.06
...

Tomcat5 yönetimi

Eğer yukarıda gösterildiği şekilde Tomcat yönetim paketini de kurduysanız, yönetim penceresine geçebilmek için aşağıdaki dosyayı düzenlemeniz gerekir:

gksudo "gedit /usr/share/tomcat5/conf/tomcat-users.xml"

ve Tomcat'in ana sayfasında anlatıldığı şekilde admin ve manager yetkileriyle yeni bir kullanıcı oluşturmak için aşağıdaki satırları ekleyin:

 <role rolename="manager"/>
 <role rolename="admin"/>
<user username="kullanıcı_ismi " password="kendi_parolanız" roles="admin,manager"/>

Eğer sadece tek bir yetki ile kullanacaksanız birini silin. Örneğin sadece

 <role rolename="admin"/>
<user username="kullanıcı_ismi " password="kendi_parolanız" roles="admin"/>

Tomcat5 içinde yeni servlet veya jsp sayfaları kurmak

Tomcat yönetecisini kullanarak servlet/jsp'lerinizi düzenli olarak kontrol edebilirsiniz.

  • Sunucunuza giriş yapın (öntanımlı olarak 127.0.0.1:8180)
  • Tomcat yönetim sayfasına kullanıcı isminizi ve parolanız ile girin (sol taraftaki bağlantı)
  • Deploy bölümünü bulun ve WAR veya Directory URL kısmına şunu yazın:
file://kendi SERVLET veya JSP sayfa dizininiz

Genellikle servlet/jsp sayfaları /usr/share/tomcat5/webapps dizininde bulunur.

Görsel Olarak Kurulum

Öncelikle Synaptic açılmalı


Apache PHP MYSQL Kurmak

Search yardımı ile apacheyi bulup işağretliyoruz:

Apache PHP MYSQL Kurmak

php yi buluyor ve işağretliyoruz:

Apache PHP MYSQL Kurmak

Gerekli  gördüğünüz extensionlarıda işağretleyebilirsiniz. Mysql bulunup işağretleniyor:

Apache PHP MYSQL Kurmak

Testimizi yapıyoruz:

Apache PHP MYSQL Kurmak

Dosyalarınızı koyacağınız klasör: /var/www

Apache PHP MYSQL Kurmak

Apache nin ayar klasörü: /etc/apache2/

Apache PHP MYSQL Kurmak

Eğer /var/www klasörünü değiştirmek isterseniz:

By default all your configuration files are located at /etc/apache2

Default document root for apache2 is /var/www.If you want to change the default document root you need to edit the /etc/apache2/sites-available/default file and look for this line “DocumentRoot /var/www/” here you can change where ever you want to change.For example if you want to change /home/wwww the above line looks like this “DocumentRoot /home/www/”.

The main configuration file located at /etc/apache2/apche2.conf.

Installing php and cgi support for apache2

If you want to add support of php and cgi scripts install the following packages libapache2-mod-php4,php4-cli,php4-common,php4-cgi

#apt-get install libapache2-mod-php4 php4-cli php4-common php4-cgi

This will complete the installation of php support for apache2

If you want to allow the different index files types check for the following line in /etc/apache2/apache2.conf file DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.shtml

Restart the apache server

#/etc/init.d/apache2 restart

Testing your apache Server

You can access you apache using http://yourserverip/apache2-default/ it should appear the following message

“If you can see this, it means that the installation of the Apache web server software on this system was successful. You may now add content to this directory and replace this page.
Recomended module

apache2-mpm-worker

The worker MPM provides a threaded implementation for Apache2. It is considerably faster than the traditional model,and is the recommended MPM.You can install this using the following command.

#apt-get install apache2-mpm-prefork
Other files and folder located under /etc/apache2

conf.d/

Files in this directory are included by this line in apache2.conf:# Include generic snippets of statements Include

/etc/apache2/conf.d

This is a good place to add additional configuration directives.

httpd.conf Empty file.

magic

Magic data for mod_mime_magic Apache module, documented in htdocs/manual/mod/mod_mime_magic.html. You probably don’t need to touch this.

mods-available/

This directory contains a series of .load and .conf files.The .load files contain the Apache configuration directive necessary to load the module in question. The respective .conf files contain configuration directives necessary to utilize the module in question.

mods-enabled/

To actually enable a module for Apache2, it is necessary to create a symlink in this directory to the .load (and .conf, if it exists) files associated with the module in mods-available/.For example:cgi.load -> /etc/apache2/mods-available/cgi.load ports.conf Configuration directives for which ports and IP addresses to listen to.

sites-available/

Like mods-available/, except it contains configuration directives for different virtual hosts that might be used with apache2. Note that the hostname doesn’t have to correspond exactly with the filename. ‘default’ is the default host.

sites-enabled/

Similar in functionality to mods-enabled/, sites-enabled contains symlinks to sites in sites-available/ that the admnistrator wishes to enable.

Example:test -> /etc/apache2/sites-available/test

Enable and Disable modules and sites in apache2

a2enmod and a2dismod are available for enabling and disabling modules utilizing the above configuration system.

a2ensite and a2dissite have been added, which do essentially the same thing as the above tools, but for sites rather than modules.

 

Kaynaklar

wiki.linux-sevenler.org/index.php/Ubuntu_altinda_Apache_MySQL_PHP_kurulumu_ve_ayarlari

www.debianadmin.com/apache2-installation-and-configuration-with-php-support-in-debian-linux.html

Yorumunuzu Ekleyin


Yükleniyor...
Yükleniyor...