February 06, 2011

Teşekkürler. Çalıştı.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 06, 2011

Ben Ubuntu 10.10 kullanıyorum ama başka dağıtımlarda da aynı olacağını düşünürüm.

  1. (buna gerek kalmadı :D)

  2. Apache 2'yi kurun:

'sudo apt-get install apache2'

  1. İnternet tarayıcınızın satırına 'localhost' yazın ve Enter'a basın

"It works!" diyen bir sayfa çıkacaktır. Yani Apache 2 başarıyla kuruldu...

  1. Bir cgi programı yazın.

Tanım gereği olarak programınızın belirli bir html istemine uygun olan bir yanıt üretmesi gerekir. Bu yanıt şu düzene uymalıdır ve programın standart çıkışına yazılmalıdır:

'Content-type: text/html; charset=utf-8

.. sayfanın içeriği ...

Öyle bir sayfa üreten bir deneme D programı şurada var:

http://ddili.org/ornek_kod/deneme.d

4a) Onu, ismi cgi_deneme.d olarak kaydedin

4b) O dosya içinde geçen

http://ddili.org/cgi-bin/deneme

bağlantısını şöyle değiştirin:

http://localhost/cgi-bin/cgi_deneme

Yoksa sonradan tıkladığınız düğmeler sizi ddili'ne götürür.

4c) Derleyin:

'dmd cgi_deneme.d'

4d) Komut satırındayken çalıştırın:

'./cgi_deneme'

Program, çıkışa yukarıdaki düzene uyan bir html yanıtı yazacaktır. Herşey yolunda gittiyse bu yanıtın sonunda şöyle satırlar görmelisiniz:

'
..
HTTP_ACCEPT:
HTTP_USER_AGENT:

  1. Deneme cgi programını Apache'nin klasörüne kopyalayın

(NOT 1: Bütün bu adımları root kullanıcısı olarak yazın.)

(NOT 2: Eğer burada benim gibi /var/www yazmak yerine /usr/lib kullanırsanız 6 numaralı adım gerekmez, ama cgi programlarının /usr/lib gibi ilgisiz bir yerde durmaları bana garip geliyor.)

5a) cgi programları için bir yer oluşturun (bunu bir kere yapacaksınız)

'mkdir /var/www/cgi-bin '

5b) Yukarıda 4 numaralı adımnda oluşturmuş olduğunuz deneme cgi programını oraya kopyalayın

'cp cgi_deneme /var/www/cgi-bin'

  1. Apache'nin cgi-bin olarak orayı görmesini sağlayın:

6a) /etc/apache2/sites-available/default dosyasını açın

6b) O dosya içindeki /usr/lib/cgi-bin olan iki yeri /var/www/cgi-bin olarak değiştirin ve dosyayı kaydedin.

Yani sonuçta şöyle bir blok oluşsun:

'
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
<Directory "/var/www/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

'

  1. Apache'yi yeniden başlatın:

'sudo /etc/init.d/apache2 restart'

  1. Tarayıcı satırında cgi programını isteyin:

'http://localhost/cgi-bin/cgi_deneme'

Programın ürettiği ve düğmeleri bulunan düzgün html yanıtını görmeniz gerekir...

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]