Apache 利用 .htaccess 隱藏網址列的 .php 副檔名
為了安全性或是其他原因,常常看到許多網站的 URL 將實際檔案的路徑隱藏起來,比如說下方的 URL 我們就看不出該網頁是用什麼程式寫的,PHP , JSP 或是 ASP?
http://polinwei.com/post-create?blogID=27977601
先檢查 apahce 的 httpd.conf 這一行是否開啟 ( 以xampp為例預設是開啟的 ) :
LoadModule rewrite_module modules/mod_rewrite.so
PHP 寫出來的檔案應該會是「.php」,如何將它移除只留檔名呢?只要在伺服器根目錄擺放「.htaccess」,並在當中加入以下原始碼,這樣就搞定啦!
Options +FollowSymlinks RewriteEngine on RewriteRule ^([^./]+)/?$ $1.php [L]
若為虛擬主機 VirtHost 但 RewriteRule 沒有啟作用,可以在 VirtualHost 中加入 8-12 行。這樣就可以了。
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "/var/www/html/FormMaking" ServerName form-making.yourdomain.com ErrorLog "logs/form-makgin-error.log" CustomLog "logs/form-makgin-access.log" common <Directory /var/www/html/FormMaking> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> </VirtualHost>
你必須 登入 才能發表評論。