APXS(1) | Kullanıcı Komutları | APXS(1) |
İ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
$ 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 $ _
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 $ _
$ 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] $ _
LoadModule foo_module modules/mod_foo.so
$ apxs -i -A mod_foo.c
$ 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 $ _
$ 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.
28 Şubat 2022 | Apache HTTP Sunucusu 2.4.53 |