Htaccess acces fichier: uniquement du site

Résolu
nEm3sis Messages postés 722 Statut Membre -  
Saturnin79 Messages postés 8 Statut Membre -
Bonjour,
j'ai un fichier txt et un php sur le meme site
est-ce possible que le fichier txt soit accessible uniquement depuis le fichier php, mais pas des autres sites ni des utilisateurs?

c'est a dire juste utiliser un include et que ça soit le seul moyen de l'afficher
Configuration: Windows XP
Firefox 3.0.3

9 réponses

  1. nEm3sis Messages postés 722 Statut Membre 113
     
    merci de votre aide
    je croit que j'ai mal exprimé mon problème en fait ...

    mais je crois a voir trouvé

    en mettant un htaccess contenant ceci
    <Files *.txt>
    deny from all
    allow from localhost
    </Files>


    comme ça le php peut faire l'include mais les utilisateurs ne peuvent pas afficher le fichier txt
    2
    1. Saturnin79 Messages postés 8 Statut Membre 1
       
      Bonjour,

      J'ai fait exactement comme ci-dessus (j'ai un fichier .txt qui contient des données et un script php qui fait des requêtes dessus), mais quand j'appelle le fichier .txt dans mon navigateur (sur un serveur local EasyPHP), le fichier .txt continue de s'afficher. Heeeeelp !
      0
  2. Elguapo
     
    Je suis là un peu tard, mais un simple:

    RewriteRule ^ton_fichier.txt$ / [R=404]

    Ça suffit pas?
    1
  3. jmg78
     
    si tu veux le cacher tu le suffixes par .php s il a lex tension txt ou htm, html il sera lisible
    0
  4. nEm3sis Messages postés 722 Statut Membre 113
     
    dsl j'ai pas très bien compris la
    tu me dis de le renommer ? mais en le renommant ça sera toujours lisible a condition de connaitre l'adresse exacte du fichier

    avec le htaccess il devrait y avoir moyen de la cacher pourtant, personne ne s'y connais ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. nEm3sis Messages postés 722 Statut Membre 113
     
    up ?

    avec la balise <files> et les deny et allow doit y avoir un moyen mais j'y arrive pas
    0
    1. divland Messages postés 215 Statut Membre 13
       
      bonjour,
      si j'ai bien compris,

      le répertoire est réservé à certains utilisateurs, donc il faut bien un htaccess

      pour ne pas voir l'arborescence, le fichier "php" doit s'appeler "index.php"

      le fichier "txt" porte n'importe quel nom

      pour "voir" le contenu du fichier "txt" il faut bien faire un include

      si plusieurs utilisateurs doivent accéder à ce répertoire avec un identifiant différent, un quatrième fichier contenant les couples "identifiant:mot de passe) doit aussi être présent


      voilà
      0
  7. webjfr
     
    Salut,

    Oui c'est bien ça, tu as bien trouvé, mais voila ce que tu peux faire, si tu es autant parano que moi !
    (Zut, tout le monde va savoir que je suis parano)

    <Files ~ "^(index)\.(p?s?x?htm?|aspx?|cfml?|cgi|pl|php[3-9]|jsp|xml)$">
    order allow,deny
    deny from all
    </Files>
    <Files ~ "\.(inc|class|sql|sqlite|ini|txt|conf|exe|dll|bin|tpl|bkp|dat|c|h|py|spd|theme|module)$">
    deny from all
    </Files>
    <Files ~ "^((wp-)?config(\.inc)?|configure|configuration|login|options?\.inc|option|settings?(\.inc)?|functions?(\.inc)?|setup(\.inc)?|default|home|main|install?|admin|errors?|hacke?r?d?|[-_a-z0-9.]*mafia[-_a-z0-9.]*|[-_a-z0-9.]*power[-_a-z0-9.]*|[-_a-z0-9.]*jihad[-_a-z0-9.]*|php|shell|ssh|root|cmd|[0-9]{1,6}|test|data)\.(p?s?x?htm?l?|txt|aspx?|cfml?|cgi|pl|php[3-9]{0,1}|jsp?|sql|xml)$">
    order allow,deny
    deny from all
    </Files>
    Options -Indexes
    DirectoryIndex index.php
    RewriteEngine On
    RewriteCond %{REQUEST_URI} !^/robots.txt
    RewriteCond %{REQUEST_URI} !^/sitemap.xml
    RewriteCond %{HTTP_USER_AGENT} ^-?$ [OR]
    RewriteCond %{HTTP_USER_AGENT} ^[bcdfghjklmnpqrstvwxz\ ]{8,}|^[0-9a-z]{15,}|^[0-9A-Za-z]{19,} [OR]
    RewriteCond %{HTTP_USER_AGENT} Extractor|almaden|anonymous|autoemailspider|blogsearchbot-martin|CherryPicker|Digger|DirectUpdate|Download\ Accelerator|echo\ extense|Collector|EmailWolf|flashget|frontpage|Go!Zilla|grub\ crawler|HTTPConnect|httplib|HttpProxy|HTTP\ agent|HTTrack|Indy\ Library|Jakarta\ Commons|libWeb|libwww|Microsoft\ Data|Microsoft\ URL|MJ12bot|Movable\ Type|NICErsPRO|NutchCVS|Nutscrape/|OmniExplorer|psycheclone|PussyCat|PycURL|python|QuepasaCreep|SiteMapper|Download|sucker|SurveyBot|Teleport\ Pro|Telesoft|TrackBack|Turing|TurnitinBot|vobsub|webbandit|WebCapture|webcollage|WebCopier|WebDAV|WebEmailExtractor|WebReaper|WEBsaver|WebStripper|WebZIP|widows|Wysigot|Zeus|Zeus.*Webster [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} ^<sc|^adwords|^curl|^eCatch|^Fetch\ API\ Request|^GT\:\:WWW|^HTTP\:\:Lite|^ia_archive|^Internet\ Explorer|^IPiumBot|^Java/1.|^Java\ 1.|^Kapere|^LWP|^minibot\(NaverRobot\)|^Moozilla|^Mozilla$|^MSIE|^NPBot|^Offline\ Explorer|^Offline\ Navigator|^PEAR|^Program\ Shareware|^URI\:\:Fetch|^user|^User-Agent:\ |^User\ Agent:\ |^Wget [NC]
    RedirectMatch gone ^/_vti.*
    RedirectMatch gone ^/MSOffice.*
    RedirectMatch gone ^[-_a-z0-9/\.]*//.*
    RewriteCond %{REQUEST_METHOD} (GET|POST) [NC]
    RewriteCond %{QUERY_STRING} ^(.*)(%3C|<)/?script(.*)$ [NC,OR]
    RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)?javascript(%3A|:)(.*)$ [NC,OR]
    RewriteCond %{QUERY_STRING} ^(.*)document\.location\.href(.*)$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)http(%3A|:)(/|%2F){2}(.*)$ [NC,OR]
    RewriteCond %{QUERY_STRING} ^(.*)base64_encode(.*)$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)GLOBALS(=|[|%[0-9A-Z]{0,2})(.*)$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)_REQUEST(=|[|%[0-9A-Z]{0,2})(.*)$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)(SELECT|INSERT|DELETE|CHAR\(|UPDATE|REPLACE|LIMIT)(.*)$
    RewriteCond %{REQUEST_URI} .*((php|my)?shell|remview.*|phpremoteview.*|sshphp.*|pcom|nstview.*|c99|r57|webadmin.*|phpget.*|phpwriter.*|fileditor.*|locus7.*|storm7.*)\.(p?s?x?htm?l?|txt|aspx?|cfml?|cgi|pl|php[3-9]{0,1}|jsp?|sql|xml) [NC,OR]
    RewriteCond %{REQUEST_METHOD} (GET|POST) [NC]
    RewriteCond %{QUERY_STRING} ^(.*)=/home(.+)?/loginftp/(.*)$ [OR]
    RewriteCond %{QUERY_STRING} ^work_dir=.*$ [OR]
    RewriteCond %{QUERY_STRING} ^command=.*&output.*$ [OR]
    RewriteCond %{QUERY_STRING} ^nts_[a-z0-9_]{0,10}=.*$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)cmd=.*$ [OR] 
    RewriteCond %{QUERY_STRING} ^c=(t|setup|codes)$ [OR]
    RewriteCond %{QUERY_STRING} ^act=((about|cmd|selfremove|chbd|trojan|backc|massbrowsersploit|exploits|grablogins|upload.*)|((chmod|f)&f=.*))$ [OR]
    RewriteCond %{QUERY_STRING} ^act=(ls|search|fsbuff|encoder|tools|processes|ftpquickbrute|security|sql|eval|update|feedback|cmd|gofile|mkfile)&d=.*$ [OR]
    RewriteCond %{QUERY_STRING} ^&?c=(l?v?i?&d=|v&fnot=|setup&ref=|l&r=|d&d=|tree&d|t&d=|e&d=|i&d=|codes|md5crack).*$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)([-_a-z]{1,15})=(ls|cd|cat|rm|mv|vim|chmod|chdir|mkdir|rmdir|pwd|clear|whoami|uname|tar|zip|unzip|tar|gzip|gunzip|grep|more|ln|umask|telnet|ssh|ftp|head|tail|which|mkmode|touch|logname|edit_file|search_text|find_text|php_eval|download_file|ftp_file_down|ftp_file_up|ftp_brute|mail_file|mysql|mysql_dump|db_query)([^a-zA-Z0-9].+)*$ [OR]
    RewriteCond %{QUERY_STRING} ^(.*)(wget|shell_exec|passthru|system|exec|popen|proc_open)(.*)$
    RewriteRule (.*) - [F]
    
    0
    1. nEm3sis Messages postés 722 Statut Membre 113
       
      oulaa c'est bien compliqué tout ça
      j'y comprend strictement rien :/

      par contre je suis chez free donc c'est limité a une seule balise <files> si je ne me trompe pas


      en compréhensible (par un débutant en htaccess) ça apporte quoi de plus ton fichier ?
      0
  8. webjfr
     
    Salut,

    En 3 lignes :
    * Restrictions d'acces de certains fichiers
    * Interdiction de certains "Bad Bot"
    * Interdiction que certains variable comporte certains mots à fin de bloquer les differents types d'injection (sql xss)

    Un inconvénient :
    Il ne faut pas utiliser certains noms de variable.
    0
  9. nEm3sis Messages postés 722 Statut Membre 113
     
    merci :)
    0
  10. webjfr
     
    De rien.

    Et t'inquiete pas, il existe bien pire que ça en .htaccess :P
    Tu peux meme ajouter une interdiction d'accès au fichier .htaccess :-P
    0