有沒有辦法隱藏我從用戶使用PHP的事實?我想有兩個原因這樣做:從用戶隱藏PHP
- 1)因此,在地址欄看起來更乾淨的鏈接(如這裏的計算器)
- 2)爲防止立刻會意的潛在黑客尋找什麼
第2點甚至是現實的還是黑客知道我在用什麼?我用php5-fpm使用nginx。
有沒有辦法隱藏我從用戶使用PHP的事實?我想有兩個原因這樣做:從用戶隱藏PHP
第2點甚至是現實的還是黑客知道我在用什麼?我用php5-fpm使用nginx。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
http://eisabainyo.net/weblog/2007/08/19/removing-file-extension-via-htaccess/
除了mod_rewrite的變化,還設置expose_php
爲false:http://www.php.net/manual/en/ini.core.php#ini.expose-php
以上(或者以下)的答案給在技術方面的信息,讓我回答的道德方:
不要這樣做。第2點是完全無效的,如果有人想要傷害,這不會阻止它。適當的安全檢查將會發生。第1點是非常有效的,現在沒有人再鏈接了。
保持PHP隱藏不受公共訪問權限的最佳方式是相應地構建文件夾。最佳做法是從公用文件夾保持你的庫和應用程序文件至少一個級別,如:
/application
// application files
/library
// library and vendor files
/public (aka public_html, htdocs etc)
index.php
.htaccess
/css
/images
/js
使用htaccess以及mod_rewrite的將請求路由到index.php文件,然後將請求分派到應用程序。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php
這樣,你只有一個單一的PHP文件公開訪問的,這僅僅是包括通過任何URL
1不可用其他文件),以便在地址欄看起來更乾淨的鏈接(如這裏on stackoverflow)
mmm。 OK
2)爲了防止立刻會意默默無聞要尋找什麼
安全的潛在黑客。相信我,這不會讓他們放慢腳步。
這樣做一個很正當的理由,但是,是讓你的網站是不是綁在一個特定的開發語言。
我看到有幾個人已經提到過mod_rewrite。這是一個解決方案 - 但它是一個非常複雜的工具。另外,在URL的路徑中嵌入CGI變量時要非常小心 - 您可以快速打破內容。
一個簡單的解決辦法是落實每一個入口點的PHP腳本(即有沒有一個包括任何/要求文件)作爲「的index.php」,並引用它通過它的目錄。
或者選擇自己的文件擴展名並替換引用與您的擴展配置轉換爲.php。