CasaOs - Dinamik websiteler için uygulama önerisi?

Merhaba :wave: bir süredir evimde CasaOs kullanıyorum. Açıkcası işime çok yarıyor ve 7/24 çalıştırıyorum, CasaOs içerisindeki CloudFlared-Web ile çalışan uygulamaları internete public ip olmadan açabiliyorum.
image1
Ekran görüntüsünde de göründüğü üzere birden fazla mağazayı halihazırda CasaOs içerisine ekledim, Nginx ve Cloudflared ile static websiteler açabiliyorum. Ancak benim istediğim dinamik websiteler açabilmek için Apache2 kurabilmek. Hiçbir kaynakta bunun nasıl yapıldığına dair bir sonuç bulamadım. Özel uygulama olarak yüklemeye çalıştım ancak volume bağlantısında sorunlar yaşadım.
Yardımcı olursanız çok sevinirim. Saygılarımla…

İşe yaramayan çözüm önerileri

  • HestiaCp - public ip’ye sahip olmadığım için çalışmıyor.

Merhaba foruma hoş geldiniz.

Bunu nginx veya nginx proxy manager ile yapmanızı engelleyen bir şey mi var? Yoksa apcahe2 ye daha hakim olduğunuz için mi onu istiyorsunuz?

1 Like

Merhaba yanıtladığın için teşekkür ederim.
Nginx proxy manager ile denedim ancak sanırım ayarlarını yanlış yaptım.

Umarım nerede hata yaptığımı bulursun, ayrıca nginx proxy manager ile dynamic siteler kurabilir miyim ? Açıkcası php versionu ve modülleri benim için önemli.

Öncelikle şunu sorayım 80 ve 443 portlarının ana yöneticisi nginx proxy manager olması lazım. Onu neden değiştirdiniz? Container’da 80 ve 443 olması yeterli değil. Host üzerinde de bu portları yönetebilmesi lazım. Bu portları kullanan başkaca bir app mı mevcut sunucunuzda? (Edit: 81 nolu port da aynı şekilde)

İlk fotoğrafla ilgili de hem source hem de destination için aynı değerler girilmiş. Bu bir şeyi değiştirmeyecektir. (Yani istediğimiz sonuca ulaşmamıza yardımcı olmaz. Yanlış olmuş) Sadece lokalde mi serve edeceksiniz yoksa bir domaininiz var mı? DDNS den alınmış bile olsa olur.

İleriye dönük edit: Nginx proxy manager’in yanında php veya sql gibi bir şeye de ihtiyacınız var ise bunları aynı compose dosyasında başlatırsanız sadece bir ayar ile bunları gerektiren dinamik siteleri barındırabilirsiniz. Genelde en çok sorulan şey php ile birlikte çalışır mı oluyor :smiley:

1 Like

80 portunu casaos kullanıyordu şu anda onu değiştirdim. 433 portunu da nginx proxy manager’a atamış bulunuyorum. Ancak bu sefer ise 502 bad gateway hatası aldım. Dediğiniz “compose dosyasında başlatırsınız” acaba bunu nasıl yapacağıma dair minik bir tutorial alabilir miyim? Bir kaynak da işimi çözer sanırım.

Kullanacağınız PHP sürümüne göre (php gerekli mi bunu kontrol edelim önce) aşağıdaki linke benzer bir şey yapabilirsiniz.

Bunun MySQL / MariaDB versiyonu da gene aşağıdaki linkteki gibi:

Bu da muhtemelen ilk resimdeki hatadan kaynaklı. Bir önceki konudaki domain kısmına cevap alabilirsem daha kolay bir çözüm üretebiliriz oraya.

Evet domainim var, public ip olmadığı için cloudflared ile internete açıyorum. Php gerekli bir cms sistemi kullanacağım.
1.Edit: Yolladığın bağlantıları şu an kontrol ediyorum.
2.Edit: Demek istediğini anladım bir compose düzenlemesi ile bir app içerisinde birden fazla docker image’ını kurabiliyormuşuz. Sanırım özel uygulama olarak bu şekilde kurmak işime yarayabilir, deneyeceğim.

Peki internete gerçekten açılmasını istiyor musun yoksa lokalde de olsa bir domain ile erişebilmek için mi bu alan adı alındı?

İşin içine bir de cloudflare tunnel girdiği için ekstra bir dikkat etmek gerekiyor. Eğer dışarı açılacak ise bunu da dikkate alarak bir düzen kurmak lazım. (tabi bu ilerisinin konusu)

Nginx proxy manager’ın yanına (aynı docker’a) php ve mysql (eğer gerekli ise) dışında bir şey eklememeni tavsiye ederim. Çünkü dockerlar birlikte ayağa kaldırılıp indiriliyor. Bir özel app da sorun olduğunda diğerlerini etkilememesi için her app ı ayrı docker olarak kurmanı tavsiye ederim. Yani nginx-php tek compose diğerleri ayrı ayrı.

Domain wulcato.net , açıkcası şu an linkstack ve uptimekuma ile hem ana domainde hemde subdomain olarak halihazırda cloudflared ile kullanıyorum. Şu an yapmak istediğim bir cms yazılımını kurarak subdomain olarak internete açmak.

Demek istediğini anladım, şimdi deniyorum.

1 Like

Bu şekilde nginx-php kurulumunu gerekli portları ve volume değerlerini vererek tamamladım.
Compose dosyam : https://ftp.wulcato.net/nginx-php.yaml

Açıkcası daha önce nginx proxy manager kullanmadım, sanırım tekrardan yanlış bir ayarlama yaptım :smiley:
Sitenin hem local’de de çalışması test açısından daha iyi olacak gibi görünüyor. Nasıl yapabilirim ?


Bu sayfa geldi ise nginx proxy manager çalışıyor demektir. Host dosyanıza denemek için bir domain eklerseniz daha kolay test edersiniz. Mesela benimhost.local ve *.benimhost.local gibi. Böylece nginx proxy manager’a da bu değerleri girebilirsiniz. Yerelde çalıştıktan sonra genele açarsınız.

Bu şekilde deneyelim. Olmazsa öğlenden sonra birlikte bir bakalım.

1 Like

Uptime Kuma uygulamamı host olarak ekledim ve çalıştı ancak sormak istediğim kısım şu bu nginx proxy manager ile direkt website oluşturamıyor muyum ? İnternette website create diye bir makale bulamadım maalesef.




Buradaki gibi yönlendirme tamamdır ancak, var olmayan bir websiteyi dosya lokasyonunu belirterek var olmasını sağlayamıyor muyum. Sanırım lokasyonu yanlış yazıyor olabilirim. Hiçbir türlü olmadı.

Edit : Bu kadar uğraştırdığım için kusura bakma :slight_smile: Müsait bir zamanında ilgilenirsen çok sevinirim.

2 Likes

Evet sağlayabiliyorsunuz. İster statik ister dinamik bir site olsun bu mümkün. Eksik olan kısım Advanced sekmesine girilmesi gereken php config bilgileri. Bunları da aşağıdaki alıntıdaki gibi eklerseniz olur. Hatta site eklemeden önce php info gibi bir dosya eklerseniz php nin de çalıştığını teyit etmiş olursunuz.

Mesela şuna benzer bir şey olabilir. İhtiyacınıza göre modifiye edebilirsiniz. Direkt kopyala yapıştır yapmak yerine.

location / {
  index index.php index.html index.htm;
}

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass php:9000;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
}
2 Likes

Sanırım başardım, yardımcı olduğun için teşekkür ederim!
Anladığım kadarıyla sadece php-fpm’in /var/www/html içerisinde barındırmalıyım.

Ufak path değişikliklerinden sonra sorunsuz çalıştı. Harici port’lar açıp birden fazla site de açabiliyorum. (/var/www/html/yeni-site-yolu ve nginx proxy manager ile yol belirtme işlemleri)



Screenshot_14
Screenshot_15

Böylelikle konu çözülmüş oldu. @wise Yardımların için tekrardan teşekkürler.

1 Like

Rica ederim. Çözülmesine sevindim. İyi forumlar diliyorum.

2 Likes