• 19-01-2025, 17:20:26
    #1
    Arkadaşlar, Nginx çalıştırdığım sunucuma bir script kurmak istiyorum. Bu script içinde Apache için yapılmış .htaccess dosyaları mevcut fakat nginx htaccess desteklemediği için bu dosyaları .conf dosyalarına entegre etmem gerekiyor. Bunun için sizlerden yardım istiyorum. Yaşadığım sorun aşağıdadır.

    Siteye scripti atıp gerekli .conf düzenlemesini yaptığımda site açılıyor fakat siteadresi.com/iletisim gibi sayfalara gitmeye çalıştığımda 404 hatası alıyorum. Aşağıda conf ve htaccess dosyalarımı paylaşıyorum. yardım edebilecek olan arkadaşlar lütfen chatgpt vb araçları kullanarak yardım etmeye çalışmayınız çünkü chatgpt bu işi çözemedi. Scriptin içerisindeki sayfalar /inc klasöründe xxx.php şeklinde bulunmaktadır.
    Script : https://15.sayim.com.tr/ Admin : https://15.sayim.com.tr/admin


    htaccess'e göre düzenlediğim .conf dosyam
    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }
    server {
        listen 80;
        listen [::]:80;
        server_name xxx.com;
        access_by_lua_file /usr/share/ssowat/access.lua;
        include /etc/nginx/conf.d/acme-challenge.conf.inc;
        location ^~ '/.well-known/ynh-diagnosis/' {
            alias /var/www/.well-known/ynh-diagnosis/;
        }
        location ^~ '/.well-known/autoconfig/mail/' {
            alias /var/www/.well-known/xxx.com/autoconfig/mail/;
        }
        location / {
            return 301 https://$host$request_uri;
        }
        include /etc/nginx/conf.d/yunohost_http_errors.conf.inc;
        access_log /var/log/nginx/xxx.com-access.log;
        error_log /var/log/nginx/xxx.com-error.log;
    }
    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name xxx.com;
        include /etc/nginx/conf.d/security.conf.inc;
        ssl_certificate /etc/yunohost/certs/xxx.com/crt.pem;
        ssl_certificate_key /etc/yunohost/certs/xxx.com/key.pem;
        more_set_headers "Strict-Transport-Security : max-age=63072000; includeSubDomains; preload";
        # OCSP settings
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_trusted_certificate /etc/yunohost/certs/xxx.com/crt.pem;
        resolver 1.1.1.1 9.9.9.9 valid=300s;
        resolver_timeout 5s;
        location ^~ '/.well-known/autoconfig/mail/' {
            alias /var/www/.well-known/xxx.com/autoconfig/mail/;
        }
        access_by_lua_file /usr/share/ssowat/access.lua;
        include /etc/nginx/conf.d/xxx.com.d/*.conf;
        include /etc/nginx/conf.d/yunohost_panel.conf.inc;
        include /etc/nginx/conf.d/yunohost_admin.conf.inc;
        include /etc/nginx/conf.d/yunohost_api.conf.inc;
        include /etc/nginx/conf.d/yunohost_http_errors.conf.inc;
        access_log /var/log/nginx/xxx.com-access.log;
        error_log /var/log/nginx/xxx.com-error.log;
    }
    # my_webapp Konfigürasyonu
    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name xxx.com;
        # Path to source
        location / {
            alias /var/www/my_webapp/www/;
            # Default indexes and catch-all
            index index.php index.html;
            try_files $uri $uri/ /index.php?sayfa=$1&link=$1;
            # Prevent useless logs
            location = /favicon.ico {
                log_not_found off;
                access_log off;
            }
            location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
            }
            # Deny access to hidden files and directories
            location ~ ^/(.+/|)\.(?!well-known\/) {
                deny all;
            }
            # Include my_webapp specific configurations
            include /etc/nginx/conf.d/xxx.com.d/my_webapp.d/*.conf;
        }
        # Admin İlgili Rewrite Kuralları
        location ~ ^/giris-yap$ {
            rewrite ^ /giris-yap.php last;
        }
        location ~ ^/sifremi-unuttum$ {
            rewrite ^ /sifremi-unuttum.php last;
        }
        location ~ ^/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=$1 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/siparisler/([0-9]*)$ {
            rewrite ^ /index.php?dil=$1&sayfa=siparisler&durum=$2 last;
        }
        location ~ ^/urunler/([0-9]*)$ {
            rewrite ^ /index.php?sayfa=urunler&durum=$1 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/urunler/([0-9]*)$ {
            rewrite ^ /index.php?dil=$1&sayfa=urunler&durum=$2 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/siparisler/([0-9]*)/sil/([0-9]*)$ {
            rewrite ^ /index.php?dil=$1&sayfa=siparisler&durum=$2&sil_id=$3 last;
        }
        # Ana dizin URL Rewrite Kuralları
        location = /sitemap.xml {
            rewrite ^ /sitemap.php?tip=sitemap last;
        }
        location ^~ /sitemap/ {
            rewrite ^/sitemap/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)$ /sitemap.php?dil=$1&tip=$2 last;
        }
        location ~ ^/dil/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?yeni-dil=$1 last;
        }
        location ~ ^/paytr$ {
            rewrite ^ /inc/paytr-bildirim.php last;
        }
        location ~ ^/iyzico-sonuc/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=iyzico-sonuc&siparis_key=$1 last;
        }
        location ~ ^/stripe-sonuc/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=stripe-sonuc&siparis_key=$1 last;
        }
        location ~ ^/paytr-sonuc/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=paytr-sonuc&siparis_key=$1 last;
        }
        location ~ ^/manuel-odeme/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=manuel-odeme&siparis_key=$1 last;
        }
        # Ürün ve Sayfa URL'leri
        location ~ ^/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?sayfa=urun&link=$1 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)$ {
            rewrite ^ /index.php?yeni-dil=$1&sayfa=urun&link=$2 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/$ {
            rewrite ^ /index.php?sayfa=sayfa&link=$1 last;
        }
        location ~ ^/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/$ {
            rewrite ^ /index.php?yeni-dil=$1&sayfa=sayfa&link=$2 last;
        }
        # Cache Control
        location ~* \.(ico|jpe?g|png|gif|swf)$ {
            expires 6M;
            add_header Cache-Control "public";
        }
        location ~* \.(css|js)$ {
            expires 6M;
            add_header Cache-Control "public";
        }
        # Sayfa URL'lerinin Düzenlenmesi
        location ~ ^/([A-Za-z0-9-]+)/$ {
            rewrite ^ /inc/$1.php last;
        }
    }
  • Kabul Edilen Cevap
    • Merhaba,

      Whatsapp üzerinden iletişime geçerseniz yardımcı olabiliriz.
  • 19-01-2025, 17:22:18
    #2
    claude ai 'ya yazdınız mı?
  • 19-01-2025, 17:23:02
    #3
    m4lisen adlı üyeden alıntı: mesajı görüntüle
    claude ai 'ya yazdınız mı?
    Yazmadım açıkçası
  • 19-01-2025, 17:24:07
    #4
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    Merhaba,

    Whatsapp üzerinden iletişime geçerseniz yardımcı olabiliriz.
  • 19-01-2025, 17:24:44
    #5
    https://winginx.com/en/htaccess daha önce bu araş ile htaccess sorununu çözmüştüm bir deneyin isterseniz