Unduh file php alih-alih mengeksekusi

Kadang-kadang terjadi ketika mencoba mengakses situs web Anda, alih-alih mengeksekusi file PHP, mereka mencoba mengunduh langsung ke komputer Anda

Dalam posting ini kami akan memberi tahu Anda mengapa masalah ini biasanya terjadi dan bagaimana cara mengatasinya

Mengapa ini terjadi?

Secara umum hal ini dapat terjadi karena ada beberapa konfigurasi di situs atau server yang mencegah interpretasi jenis skrip tertentu dan mengubahnya menjadi file yang dapat diunduh

Alasan paling sering mengapa hal ini terjadi adalah karena ada beberapa instruksi di dalamnya. htaccess yang membatasi interpretasi skrip

Imgur

htaccess

Kode

<IfModule mod_rewrite.c> RewriteEngine on #RewriteBase /shopware/ # Https config for the backend #RewriteCond %{HTTPS} !=on #RewriteRule backend/(.*) //%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteRule shopware.dll shopware.php RewriteRule files/documents/.* engine [NC,L] RewriteRule backend/media/(.*) media/$1 [NC,L] RewriteCond %{REQUEST_URI} !(\/(engine|files|templates|themes|web)\/) RewriteCond %{REQUEST_URI} !(\/media\/(archive|banner|image|music|pdf|unknown|video)\/) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ shopware.php [PT,L,QSA] # Fix missing authorization-header on fast_cgi installations RewriteRule .* - [E=HTTP_AUTHORIZATION:%{Authorization},L] </IfModule> <IfModule mod_alias.c> # Block access to VCS directories RedirectMatch 404 /\\.(svn|git|hg|bzr|cvs)(/|$) # Restrict access to root folder files RedirectMatch 404 /(composer\.(json|lock)|README\.md|UPGRADE\.md)$ </IfModule> # Staging environment #SetEnvIf Host "staging.test.shopware.in" SHOPWARE_ENV=staging # Development environment #SetEnvIf Host "dev.shopware.in" SHOPWARE_ENV=dev #SetEnv SHOPWARE_ENV dev DirectoryIndex index.html DirectoryIndex index.php DirectoryIndex shopware.php # Disables download of configuration <Files ~ "\.(tpl|yml|ini)$"> # Deny all requests from Apache 2.4+. <IfModule mod_authz_core.c> Require all denied </IfModule> # Deny all requests from Apache 2.0-2.2. <IfModule !mod_authz_core.c> Deny from all </IfModule> </Files> # Enable gzip compression <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/xml text/plain text/css text/javascript application/javascript application/json application/font-woff application/font-woff2 image/svg+xml </IfModule> <Files ~ "\.(jpe?g|png|gif|css|js|woff|eot)$"> <IfModule mod_expires.c> ExpiresActive on ExpiresDefault "access plus 1 month" </IfModule> <IfModule mod_headers.c> Header append Cache-Control "public" Header unset ETag </IfModule> FileETag None </Files> # Match generated files like: # 1429684458_t22_s1.css # 1429684458_t22_s1.js <FilesMatch "([0-9]{10})_(.+)\.(js|css)$"> <ifModule mod_headers.c> Header set Cache-Control "max-age=31536000, public" </ifModule> <IfModule mod_expires.c> ExpiresActive on ExpiresDefault "access plus 1 year" </IfModule> </FilesMatch> # Disables auto directory index <IfModule mod_autoindex.c> Options -Indexes </IfModule> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> <IfModule mod_php5.c> # php_value memory_limit 256M # php_value max_execution_time 120 # php_value upload_max_filesize 20M php_flag phar.readonly off php_flag magic_quotes_gpc off php_flag session.auto_start off php_flag suhosin.session.cryptua off php_flag zend.ze1_compatibility_mode off php_value always_populate_raw_post_data -1 </IfModule> # AddType x-mapp-php5 .php # AddHandler x-mapp-php5 .php <IfModule mod_headers.c> Header append X-Frame-Options SAMEORIGIN </IfModule>


Halaman kedua pelanggan yang juga merupakan toko memiliki hal yang sama. htaccess dan bekerja

 

saya punya. php yang saya inginkan agar dapat diunduh oleh pengunjung situs web saya. (Ini sebuah contoh. file php. )

Bagaimana saya bisa mengatur tautan ke contoh. php sehingga diunduh sebagai file yang dapat mereka "simpan" alih-alih dijalankan di server?

(Saya harap itu masuk akal. )

Saya telah berpikir untuk mengganti nama file menjadi “contoh. txt", tapi itu bisa jadi rumit, dan masih tidak memungkinkan mereka untuk menyimpan tanpa terlebih dahulu memilih/menempel, dll

Mengapa file PHP saya diunduh alih-alih dijalankan?

Penyebab paling umum pengunduhan halaman PHP alih-alih ditampilkan di browser adalah nilai AddHandler atau SetHandler yang salah di. file htaccess .

Mengapa situs web mengunduh alih-alih membuka?

Hal ini terjadi bila. file htaccess untuk situs web Anda berisi baris AddHandler yang tidak valid . Untuk mengatasi masalah, cari. htaccess untuk situs web Anda, buka file untuk diedit, cari baris atau baris yang dimulai dengan AddHandler, hapus dan simpan perubahannya.

Bagaimana cara mengunduh file dari PHP?

PHP memungkinkan Anda mengunduh file dengan mudah menggunakan fungsi readfile() bawaan. Fungsi readfile() membaca file dan menulisnya ke buffer output. .

Postingan terbaru

LIHAT SEMUA