Provided by: manpages-tr_2.0.6-2_all 

İSİM
apxs - Apache Eklenti Aracı
KULLANIM
apxs -g [-S isim=değer] -n modüladı
apxs -q [-v] [-S isim=değer] sorgu...
apxs -c [-S isim=değer] [-o dso-dosyası] [-I include-dizini] [-D isim=değer] [-L lib-dizini] [-l
kütüphane-adı] [-Wc,derleyici-seçenekleri] [-Wl,ilintileyici-seçenekleri] [-p] dosya...
apxs -i [-S isim=değer] [-n modüladı] [-a] [-A] dso-dosyası...
apxs -e [-S isim=değer] [-n modüladı] [-a] [-A] dso-dosyası...
AÇIKLAMA
apxs, Apache Hiper Metin Aktarım Protokolü (HTTP) sunucusu için ek modül derleme ve kurulum aracıdır. Bu
araç sayesinde, bir veya daha fazla kaynak veya nesne dosya’sından bir dinamik paylaşımlı nesne (DSO -
"Dynamic Shared Object" kısaltması) derlemek ve bu nesneyi (modülü) Apache sunucusuna çalışma anında
mod_so modülünün LoadModule yönergesi üzerinden yüklemek mümkün olmaktadır.
Bu eklenti mekanizmasını platformunuzda kullanmak için DSO desteğinin olması ve httpd(8)
çalıştırılabilirinin mod_so modülünü içerecek şekilde derlenmiş olması gerekir. Eğer bunlar mevcut
değilse apxs aracı durumu size bildirecektir. Bunu aşağıdaki komutla kendiniz de sınayabilirsiniz:
$ httpd -l
mod_so modülü gösterilen listede yer almalıdır. Bu gereksinimler sağlandığı takdirde apxs aracı sayesinde
DSO mekanizması üzerinden kendi modüllerinizi kurmak suretiyle Apache sunucunuzun işlevselliğini kolayca
arttırabilirsiniz. Örnek bir uygulama:
$ apxs -i -a -c mod_foo.c
gcc -fpic -DSHARED_MODULE -I/dosya/yolu/apache/include -c mod_foo.c
ld -Bshareable -o mod_foo.so mod_foo.o
cp mod_foo.so /dosya/yolu/apache/modules/mod_foo.so
chmod 755 /dosya/yolu/apache/modules/mod_foo.so
[’foo’ modülü /dosya/yolu/apache/etc/httpd.conf’ta etkinleştiriliyor]
$ apachectl restart
/dosya/yolu/apache/sbin/apachectl restart: httpd not running, trying to start
[Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
/dosya/yolu/apache/sbin/apachectl restart: httpd started
$ _
dosya olarak bir C kaynak dosyası (.c), bir nesne dosyası (.o) ve hatta bir kütüphane arşivi archive (.a)
belirtebilirsiniz. apxs aracı bu dosya uzantılarını tanıdığından C dosyalarını derleme işleminden, arşiv
ve nesne dosyalarını ise doğrudan ilintileme işleminden geçirir. Fakat böyle önceden derlenmiş nesne
dosyalarını kullanırken, dinamik paylaşımlı nesne olarak kullanılmalarını sağlamak üzere konumdan
bağımsız kod (PIC) üretecek şekilde derlenmiş olduklarından emin olmalısınız. Örneğin GCC’yi bunun için
daima -fpic seçeneği ile kullanmalısınız. Diğer C derleyiciler için, apxs’in nesne dosyalarını derlerken
kullanacağı seçenekleri öğrenmek için o derleyicilerin kılavuz sayfalarına bakınız.
Apache’deki DSO desteği ile ilgili daha ayrıntılı bilgi edinmek için
<https://httpd.apache.org/docs/2.4/mod/mod_so.html>: mod_so belgesini okumakla yetinmeyip
src/modules/standard/mod_so.c kaynak dosyasını da okuyunuz.
SEÇENEKLER
Ortak Seçenekler
-n modüladı
-i (kurulum) ve -g (şablon üretimi) seçenekleri için modül ismi belirtmek amacıyla kullanılır. Bir
modül ismi belirtmek için bu seçeneği kullanın. -g seçeneği için bu gereklidir. -i seçeneği için ise
araç, modül ismini kaynağın ismine bakarak veya (son çare olarak) dosya isminden tahmin etmeye
çalışarak saptamaya çalışır.
Sorgu Seçenekleri
-q httpd(8)’yi derlemekte kullanılacak değişkenler ve ortam ayarları için bir sorgu gerçekleştirir.
sorgu belirtilmeksizin çağrıldığında, bilinen değişkenleri değerleriyle birlikte basar. İsteğe bağlı
-v seçeneği liste çıktısını biçemler.
Modülünüzü yükleyecek httpd(8)’yi derlemek için kullanılacak ayarları elle belirtmek için kullanılır.
Örneğin, Apache’nin C başlık dosyalarının yerini kendi Makefile dosyalarınızın içinde şöyle
belirtebilirsiniz:
INC=-I’apxs -q INCLUDEDIR’
Yapılandırma Seçenekleri
-S isim=değer
Bu seçenek yukarıda açıklanan apxs ayarlarını değiştirir.
Şablon Üretme Seçenekleri
-g modüladı (-n seçeneğine bakınız) adında bir alt dizin oluşturur ve içine iki dosya yerleştirir: Kendi
modülünüzü oluşturabilmeniz için veya apxs mekanizmaları ile hemen oynamaya başlayabilmeniz için
mod_modüladı.c adında bir modül kaynak dosyası örneği ve bu modülü derleyip kurmayı kolaylaştırmak
için bir Makefile dosyası.
DSO Derleme Seçenekleri
-c Bu seçenek derleme yapılacağını belirtir. Önce belirtilen C kaynak dosyalarını (.c), nesne
dosyalarını (.o) elde etmek için derler. Sonra bunları kalan nesne dosyaları (.o ve .a) ile
ilintileyerek dso-dosyası adında bir dinamik paylaşımlı nesne oluşturur. Eğer -o seçeneği ile modül
ismi belirtilmemişse dosyalar arasındaki ilk dosyanın ismine bakarak dosya ismi tahmin edilmeye
çalışılır ve mod_isim.so dosya adı bu isimden elde edilir.
-o dso-dosyası
Oluşturulacak dinamik paylaşımlı nesnenin ismini belirtmek için kullanılır. Modül ismi bu seçenekle
belirtilmez ve dosya listesinden bir isim tahmini de yapılamazsa son çare olarak mod_unknown.so ismi
kullanılır.
-D isim=değer
Bu seçenek doğrudan derleme komutlarına aktarılır. Bu seçeneği derleme işlemine kendi tanımlarınızı
belirtmek için kullanın.
-I include-dizini
Bu seçenek doğrudan derleme komutlarına aktarılır. Bu seçeneği derleme işleminde kullanılmak üzere
kendi başlık dosyalarınızı içeren dizinleri arama yollarına eklemek için kullanın.
-L lib-dizini
Bu seçenek doğrudan derleme komutlarına aktarılır. Bu seçeneği derleme işleminde kullanılmak üzere
kendi kütüphane dizinlerinizi arama yollarına eklemek için kullanın.
-l kütüphane-adı
Bu seçenek doğrudan derleme komutlarına aktarılır. Bu seçeneği derleme işleminde kullanılmak üzere
kendi kütüphanelerinizi arama yollarına eklemek için kullanın.
-Wc,derleyici-seçenekleri
Bu seçenek libtool --mode=compile komutuna doğrudan seçenek aktarmak için kullanılır. Bu seçeneği
yerel derleyiciniz için gereken ek seçenekleri belirtmek için kullanın.
-Wl,ilintileyici-seçenekleri
Bu seçenek libtool --mode=link komutuna doğrudan seçenek aktarmak için kullanılır. Bu seçeneği yerel
ilintileyiciniz için gereken ek seçenekleri belirtmek için kullanın.
-p Bu seçenek apxs’in apr/apr-util kütüphaneleriyle ilintilenmesini sağlar. apr/apr-util kütüphanelerini
kullanan yardımcı uygulamaları derlerken yararlıdır.
DSO Kurulum ve Yapılandırma Seçenekleri
-i Kurulum işlemini belirtir ve dinamik olarak paylaşımlı nesneleri sunucunun modules dizinine kurar.
-a İlgili LoadModule satırını Apache’nin httpd.conf yapılandırma dosyasına otomatik olarak ekleyerek
veya böyle bir satır varsa bunu etkin kılarak modülü etkinleştirir.
-A LoadModule yönergesini daha sonra etkinleştirmek üzere satırın başına bir diyez imi (#) yerleştirmesi
dışında -a seçeneği ile aynıdır.
-e Modülü kurmaya çalışmaksızın Apache’nin httpd.conf yapılandırma dosyasını -i işlemine benzer şekilde
-a ve -A seçenekleri ile düzenleme işlemini belirtir.
ÖRNEKLER
Apache’nin sunucu işlevselliğini genişletmek amacıyla kullanacağınız mod_foo.c adında bir Apache
modülünüz olduğunu varsayalım. Öncelikle, C kaynak dosyasını, Apache sunucusuna çalışma anında yüklenmeye
uygun bir paylaşımlı nesne olarak derlemeniz gerekir. Bunu sağlamak için şu komutları vermelisiniz:
$ apxs -c mod_foo.c
/dosya/yolu/libtool --mode=compile gcc ... -c mod_foo.c
/dosya/yolu/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
$ _
Bundan sonra, Apache yapılandırmanızın bu paylaşımlı nesneyi yüklemek için bir LoadModule yönergesi
içermesini sağlamalısınız. apxs bu adımı basitleştirmek amacıyla, paylaşımlı nesneyi sunucunun modules
dizinine otomatik olarak kurmak ve httpd.conf dosyasını buna uygun olarak güncellemek için bir yol
sağlar. Bu sonuç şöyle elde edilebilir:
$ apxs -i -a mod_foo.la
/dosya/yolu/instdso.sh mod_foo.la /path/to/apache/modules
/dosya/yolu/libtool --mode=install cp mod_foo.la /dosya/yolu/apache/modules
...
chmod 755 /dosya/yolu/apache/modules/mod_foo.so
[’foo’ modülü /dosya/yolu/apache/conf/httpd.conf’da etkinleştiriliyor]
$ _
Yapılandıma dosyasına (eğer yoksa) şu satır eklenir:
LoadModule foo_module modules/mod_foo.so
Bunu öntanımlı olarak iptal etmek isterseniz -A seçeneğini kullanmanız gerekir:
$ apxs -i -A mod_foo.c
apxs mekanizmalarını hızlıca denemek için örnek bir Apache modül şablonunu ve bir Makefile dosyasını
şöyle oluşturabilirsiniz:
$ apxs -g -n foo
Creating [DIR] foo
Creating [FILE] foo/Makefile
Creating [FILE] foo/modules.mk
Creating [FILE] foo/mod_foo.c
Creating [FILE] foo/.deps
$ _
Ardından bu örnek modülü bir paylaşımlı nesne olarak derleyip Apache sunucusuna yükleyebilirsiniz:
$ cd foo
$ make all reload
apxs -c mod_foo.c
/dosya/yolu/libtool --mode=compile gcc ... -c mod_foo.c
/dosya/yolu/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
apxs -i -a -n "foo" mod_foo.la
/dosya/yolu/instdso.sh mod_foo.la /dosya/yolu/apache/modules
/dosya/yolu/libtool --mode=install cp mod_foo.la /dosya/yolu/apache/modules
...
chmod 755 /dosya/yolu/apache/modules/mod_foo.so
[’foo’ modülü /dosya/yolu/apache/conf/httpd.conf’ta etkinleştiriliyor]
apachectl restart
/dosya/yolu/apache/sbin/apachectl restart: httpd not running, trying to start
chmod 755 /dosya/yolu/apache/modules/mod_foo.so
[’foo’ modülü /dosya/yolu/apache/etc/httpd.conf’ta etkinleştiriliyor]
apachectl restart
/dosya/yolu/apache/sbin/apachectl restart: httpd not running, trying to start
[Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
/dosya/yolu/apache/sbin/apachectl restart: httpd started
$ _
ÇEVİREN
© 2022 Nilgün Belma Bugüner
Bu çeviri özgür yazılımdır: Yasaların izin verdiği ölçüde HİÇBİR GARANTİ YOKTUR.
Lütfen, çeviri ile ilgili bildirimde bulunmak veya çeviri yapmak için https://github.com/TLBP/manpages-
tr/issues adresinde "New Issue" düğmesine tıklayıp yeni bir konu açınız ve isteğinizi belirtiniz.
Apache HTTP Sunucusu 2.4.53 28 Şubat 2022 APXS(1)