Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Problem mit HEAD / curl / mod_headers.c / charset

  1. #1
    Registrierter Benutzer
    Registriert seit
    Oct 2017
    Beiträge
    5

    Question Problem mit HEAD / curl / mod_headers.c / charset

    CentOS 6.9
    Linux 2.6.32-696.10.1.el6.x86_64
    Apache/2.2.15

    Win 7
    WinSCP 5.11.2 portable (internal editor, UTF-8)
    PuTTY 0.70 portable

    Hallo,
    das Auslesen des in der .htaccess gesetzten Cache-Control Headers mit curl funktioniert nur bei html Dateien und nicht bei php Dateien. Beide Dateien sind wie folgt gefüllt.
    Code:
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    </head>
    <body>
    </body>
    </html>
    Alle Files (.htaccess, html, php) sind in UTF-8 gespeichert.

    In der .htaccess steht folgendes am Anfang.
    Code:
    <IfModule mod_headers.c>
    Header set Cache-Control "no-cache, no-store, must-revalidate"
    </IfModule>
    Curl liefert folgendes.
    Code:
    [user@server ~]$ curl -I https://www.example.com/example.html
    HTTP/1.1 200 OK
    Date: Sat, 16 Dec 2017 11:48:44 GMT
    Server: Apache/2.2.15 (CentOS)
    Vary: Host
    Last-Modified: Sat, 16 Dec 2017 11:36:58 GMT
    ETag: "da6376-5d-5607388e88a80"
    Accept-Ranges: bytes
    Content-Length: 93
    Cache-Control: no-cache, no-store, must-revalidate
    Connection: close
    Content-Type: text/html
    
    [user@server ~]$ curl -I https://www.example.com/example.php
    HTTP/1.1 200 OK
    Date: Sat, 16 Dec 2017 11:48:46 GMT
    Server: Apache/2.2.15 (CentOS)
    X-Powered-By: PHP/5.6.3
    Connection: close
    Content-Type: text/html; charset=UTF-8
    HEAD liefert folgendes.
    Code:
    [user@server ~]$ HEAD https://www.example.com/example.html
    200 OK
    Cache-Control: no-cache, no-store, must-revalidate
    Connection: close
    Date: Sat, 16 Dec 2017 12:01:57 GMT
    Accept-Ranges: bytes
    ETag: "da6376-5d-5607388..."
    Server: Apache/2.2.15 (CentOS)
    Vary: Host
    Content-Length: 93
    Content-Type: text/html
    Last-Modified: Sat, 16 Dec 2017 11:36:58 GMT
    Client-Date: Sat, 16 Dec 2017 12:01:57 GMT
    Client-Peer: ...:200:0:...
    Client-Response-Num: 1
    Client-SSL-Cert-Issuer: /C=BE/O=GlobalSign nv-sa/CN=AlphaSSL CA - SHA256 - G2
    Client-SSL-Cert-Subject: /OU=Domain Control Validated/CN=*.server.example.com
    Client-SSL-Cipher: DHE-RSA-AES256-GCM-SHA384
    Client-SSL-Socket-Class: IO::Socket::SSL
    Client-SSL-Warning: Peer certificate not verified
    
    [user@server ~]$ HEAD https://www.example.com/example.php
    200 OK
    Connection: close
    Date: Sat, 16 Dec 2017 12:01:04 GMT
    Server: Apache/2.2.15 (CentOS)
    Content-Type: text/html; charset=UTF-8
    Client-Date: Sat, 16 Dec 2017 12:01:04 GMT
    Client-Peer: ...:200:0:...
    Client-Response-Num: 1
    Client-SSL-Cert-Issuer: /C=BE/O=GlobalSign nv-sa/CN=AlphaSSL CA - SHA256 - G2
    Client-SSL-Cert-Subject: /OU=Domain Control Validated/CN=*.server.example.com
    Client-SSL-Cipher: DHE-RSA-AES256-GCM-SHA384
    Client-SSL-Socket-Class: IO::Socket::SSL
    Client-SSL-Warning: Peer certificate not verified
    X-Powered-By: PHP/5.6.3
    Beim curl und HEAD der html Datei fehlt bei Content-Type das charset.
    Bei php wird zwar das charset angezeigt, aber vieles andere nicht, darunter das Cache-Control.
    Woran könnte das liegen? Liegt das nur an curl und HEAD, oder wird der Header bei php Dateien nicht gesetzt? Wie lese ich den Header dann korrekt aus?

    PS: Wenn ich die .htaccess mit notepad++ in UTF-8-BOM speicher, dann wird bei der html und php Datei als charset iso-8859-1 angezeigt, egal ob diese in UTF-8 oder UTF-8-BOM gespeichert sind.

  2. #2
    Registrierter Benutzer
    Registriert seit
    Dec 2003
    Ort
    Dettenhausen
    Beiträge
    20.720
    Poste bitte die komplette, relevante Apache-Konfig.
    Ich bin root - ich darf das.

  3. #3
    Registrierter Benutzer
    Registriert seit
    Oct 2017
    Beiträge
    5
    grep -v '#' /etc/httpd/conf/httpd.conf

    Code:
    ServerTokens OS
    
    ServerRoot "/etc/httpd"
    
    PidFile run/httpd.pid
    
    Timeout 60
    
    KeepAlive Off
    
    MaxKeepAliveRequests 100
    
    KeepAliveTimeout 15
    
    
    <IfModule prefork.c>
    StartServers       8
    MinSpareServers    5
    MaxSpareServers   20
    ServerLimit      256
    MaxClients       256
    MaxRequestsPerChild  4000
    </IfModule>
    
    <IfModule worker.c>
    StartServers         4
    MaxClients         300
    MinSpareThreads     25
    MaxSpareThreads     75
    ThreadsPerChild     25
    MaxRequestsPerChild  0
    </IfModule>
    
    Listen 185.26.156.30:81
    
    LoadModule auth_basic_module modules/mod_auth_basic.so
    LoadModule auth_digest_module modules/mod_auth_digest.so
    LoadModule authn_file_module modules/mod_authn_file.so
    LoadModule authn_alias_module modules/mod_authn_alias.so
    LoadModule authn_anon_module modules/mod_authn_anon.so
    LoadModule authn_dbm_module modules/mod_authn_dbm.so
    LoadModule authn_default_module modules/mod_authn_default.so
    LoadModule authz_host_module modules/mod_authz_host.so
    LoadModule authz_user_module modules/mod_authz_user.so
    LoadModule authz_owner_module modules/mod_authz_owner.so
    LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
    LoadModule authz_dbm_module modules/mod_authz_dbm.so
    LoadModule authz_default_module modules/mod_authz_default.so
    LoadModule ldap_module modules/mod_ldap.so
    LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
    LoadModule include_module modules/mod_include.so
    LoadModule log_config_module modules/mod_log_config.so
    LoadModule logio_module modules/mod_logio.so
    LoadModule env_module modules/mod_env.so
    LoadModule ext_filter_module modules/mod_ext_filter.so
    LoadModule mime_magic_module modules/mod_mime_magic.so
    LoadModule expires_module modules/mod_expires.so
    LoadModule deflate_module modules/mod_deflate.so
    LoadModule headers_module modules/mod_headers.so
    LoadModule usertrack_module modules/mod_usertrack.so
    LoadModule setenvif_module modules/mod_setenvif.so
    LoadModule mime_module modules/mod_mime.so
    LoadModule dav_module modules/mod_dav.so
    LoadModule status_module modules/mod_status.so
    LoadModule autoindex_module modules/mod_autoindex.so
    LoadModule info_module modules/mod_info.so
    LoadModule dav_fs_module modules/mod_dav_fs.so
    LoadModule vhost_alias_module modules/mod_vhost_alias.so
    LoadModule negotiation_module modules/mod_negotiation.so
    LoadModule dir_module modules/mod_dir.so
    LoadModule actions_module modules/mod_actions.so
    LoadModule speling_module modules/mod_speling.so
    LoadModule userdir_module modules/mod_userdir.so
    LoadModule alias_module modules/mod_alias.so
    LoadModule substitute_module modules/mod_substitute.so
    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    LoadModule proxy_connect_module modules/mod_proxy_connect.so
    LoadModule cache_module modules/mod_cache.so
    LoadModule suexec_module modules/mod_suexec.so
    LoadModule disk_cache_module modules/mod_disk_cache.so
    LoadModule cgi_module modules/mod_cgi.so
    LoadModule version_module modules/mod_version.so
    
    
    Include conf.d/*.conf
    
    
    User apache
    Group apache
    
    
    ServerAdmin xxx@xxx.xxx
    
    
    UseCanonicalName Off
    
    DocumentRoot "/var/www/html"
    
    <Directory />
    Options SymLinksIfOwnerMatch
        AllowOverride None
    </Directory>
    
    
    <Directory "/var/www/html">
    
       Options Includes FollowSymLinks
    
    AllowOverride AuthConfig FileInfo Indexes Limit Options=ExecCGI,Includes,Indexes,MultiViews,SymLinksIfOwnerMatch
    
        Order allow,deny
        Allow from all
    
    </Directory>
    
    <IfModule mod_userdir.c>
        UserDir disabled
    
    
    </IfModule>
    
    
    DirectoryIndex index.html index.htm index.html.var index.php index.php4 index.php5 index.cgi index.shtml
    
    AccessFileName .htaccess
    
    <Files ~ "^\.ht">
        Order allow,deny
        Deny from all
        Satisfy All
    </Files>
    
    TypesConfig /etc/mime.types
    
    DefaultType application/octet-stream
    
    <IfModule mod_mime_magic.c>
        MIMEMagicFile conf/magic
    </IfModule>
    
    HostnameLookups Off
    
    
    
    ErrorLog "|| /usr/sbin/rotatelogs -f -p /usr/local/sbin/logjanitor -L /var/log/httpd/error_log /var/log/httpd/error_log.%Y-%m-%d-%H_%M_%S 86400 256M"
    
    LogLevel warn
    
    LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" vcombined
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    LogFormat "%{Referer}i -> %U" referer
    LogFormat "%{User-agent}i" agent
    
    
    
    
    
    ServerSignature On
    
    Alias /icons/ "/var/www/icons/"
    
    <Directory "/var/www/icons">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
    
    <IfModule mod_dav_fs.c>
        DAVLockDB /var/lib/dav/lockdb
    </IfModule>
    
    
    <Directory "/var/www/cgi-bin">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>
    
    
    
    IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8
    
    AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
    
    AddIconByType (TXT,/icons/text.gif) text/*
    AddIconByType (IMG,/icons/image2.gif) image/*
    AddIconByType (SND,/icons/sound2.gif) audio/*
    AddIconByType (VID,/icons/movie.gif) video/*
    
    AddIcon /icons/binary.gif .bin .exe
    AddIcon /icons/binhex.gif .hqx
    AddIcon /icons/tar.gif .tar
    AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
    AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
    AddIcon /icons/a.gif .ps .ai .eps
    AddIcon /icons/layout.gif .html .shtml .htm .pdf
    AddIcon /icons/text.gif .txt
    AddIcon /icons/c.gif .c
    AddIcon /icons/p.gif .pl .py
    AddIcon /icons/f.gif .for
    AddIcon /icons/dvi.gif .dvi
    AddIcon /icons/uuencoded.gif .uu
    AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
    AddIcon /icons/tex.gif .tex
    AddIcon /icons/bomb.gif core
    
    AddIcon /icons/back.gif ..
    AddIcon /icons/hand.right.gif README
    AddIcon /icons/folder.gif ^^DIRECTORY^^
    AddIcon /icons/blank.gif ^^BLANKICON^^
    
    DefaultIcon /icons/unknown.gif
    
    
    ReadmeName README.html
    HeaderName HEADER.html
    
    
    AddLanguage ca .ca
    AddLanguage cs .cz .cs
    AddLanguage da .dk
    AddLanguage de .de
    AddLanguage el .el
    AddLanguage en .en
    AddLanguage eo .eo
    AddLanguage es .es
    AddLanguage et .et
    AddLanguage fr .fr
    AddLanguage he .he
    AddLanguage hr .hr
    AddLanguage it .it
    AddLanguage ja .ja
    AddLanguage ko .ko
    AddLanguage ltz .ltz
    AddLanguage nl .nl
    AddLanguage nn .nn
    AddLanguage no .no
    AddLanguage pl .po
    AddLanguage pt .pt
    AddLanguage pt-BR .pt-br
    AddLanguage ru .ru
    AddLanguage sv .sv
    AddLanguage zh-CN .zh-cn
    AddLanguage zh-TW .zh-tw
    
    LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
    
    ForceLanguagePriority Prefer Fallback
    
    
    
    
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    
    AddType application/x-x509-ca-cert .crt
    AddType application/x-pkcs7-crl    .crl
    
    
    
    AddHandler type-map var
    
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
    
    
    
    
    Alias /error/ "/var/www/error/"
    
    <IfModule mod_negotiation.c>
    <IfModule mod_include.c>
        <Directory "/var/www/error">
            AllowOverride None
            Options IncludesNoExec
            AddOutputFilter Includes html
            AddHandler type-map var
            Order allow,deny
            Allow from all
            LanguagePriority en es de fr
            ForceLanguagePriority Prefer Fallback
        </Directory>
    
    
    </IfModule>
    </IfModule>
    
    BrowserMatch "Mozilla/2" nokeepalive
    BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
    BrowserMatch "RealPlayer 4\.0" force-response-1.0
    BrowserMatch "Java/1\.0" force-response-1.0
    BrowserMatch "JDK/1\.0" force-response-1.0
    
    BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
    BrowserMatch "MS FrontPage" redirect-carefully
    BrowserMatch "^WebDrive" redirect-carefully
    BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
    BrowserMatch "^gnome-vfs/1.0" redirect-carefully
    BrowserMatch "^XML Spy" redirect-carefully
    BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
    PS: Das charset=iso-8859-1 erscheint bei 500 Internal Server Error. Also wenn die htaccess in UTF-8-BOM gespeichert ist, dann gibt es ein HTML Statuscode 500.

  4. #4
    Registrierter Benutzer
    Registriert seit
    Dec 2003
    Ort
    Dettenhausen
    Beiträge
    20.720
    bitte die komplette Konfig posten, die relevant ist - siehe z.B.
    Code:
    Include conf.d/*.conf
    Zudem evtl. php-fpm-Konfigs, falls Du das in Verwendung hast.
    Ich bin root - ich darf das.

  5. #5
    Registrierter Benutzer
    Registriert seit
    Oct 2017
    Beiträge
    5
    etc/httpd/conf.d -> Permission denied.

    /etc/httpd/conf/dyncontent.conf
    Code:
    <Location /fcgi-bin/>
      SetHandler fcgid-script
    </Location>
    Action php-fcgid /fcgi-bin/php-fcgi-starter
    
    <FilesMatch \.php$>
      SetHandler php-fcgid
    </FilesMatch>
    <FilesMatch \.php5$>
      SetHandler php-fcgid
    </FilesMatch>
    
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} ^(HEAD|GET) [NC]
    RewriteCond %{HTTP:Range} ([0-9]*-[0-9]*)(\s*,\s*[0-9]*-[0-9]*)+
    RewriteRule .* - [F]
    
    RewriteCond %{ENV:REDIRECT_HANDLER} =""
    RewriteRule ^/fcgi-bin/php-fcgi-starter - [F,L]
    
    RewriteCond %{ENV:REDIRECT_HTTPS} =on
    RewriteRule .* - [E=HTTPS:on]
    Zudem evtl. php-fpm-Konfigs, falls Du das in Verwendung hast.
    Wo finde ich die? Hier ist das nicht zu finden:
    /var/www/cgi-bin

    Es scheint mir so, als wenn das hier zu weit führt. Ich bin nur $user auf shared virtual host.
    Dachte nicht, dass es so etwas schwerwiegendes ist...
    Geändert von muzika (16.12.17 um 18:32 Uhr)

Ähnliche Themen

  1. ProFTP und Charset-Problem
    Von Head im Forum Linux als Server
    Antworten: 0
    Letzter Beitrag: 06.06.09, 01:22
  2. xscreensaver mit Dual Head Problem
    Von matzelito im Forum X-Konfiguration
    Antworten: 0
    Letzter Beitrag: 20.11.08, 10:08
  3. Dual-Head Problem
    Von -=BrahmA=- im Forum X-Konfiguration
    Antworten: 2
    Letzter Beitrag: 03.12.04, 15:12
  4. curl-config Problem
    Von bruemi im Forum Kompilieren von Kernel und Sourcen
    Antworten: 0
    Letzter Beitrag: 13.03.04, 23:01
  5. curl problem
    Von SniperRifle im Forum Anwendungen Allgemein, Software
    Antworten: 0
    Letzter Beitrag: 03.08.03, 14:48

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •