Tag Archives: .htaccess

Codeigniter GoDaddy .htaccess URL Rewrite issue – Codeigniter 在GoDaddy 網站寄存上 .htaccess Url Rewrite 的問題

今日再Upload一個Dev的網頁到 GoDaddy Hosting時
不知道為什麼只是可以看到主頁..
e.g. http://sharechiwai.com
但是當我嘗試到 其他頁時
E.G.
http://sharechiwai.com/app/youtubedownload
便出現以下的錯誤
500 Internal Server Error - due to wrong URL Rewrite rules on .htaccess

如何在 Codeigniter上使用 .htaccessURL rewrite隱藏 index.php
之前介紹過
Codeigniter to remove index.php URL – 在Codeigniter 的URL 除去index.php
E.G.

RewriteEngine on
RewriteCond $1 !^(index.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Microsoft Azure 自己設定的 Ubuntu 上沒有問題
但是在GoDaddy上出現問題

做了一會research之後終於找到了解決方法
GoDaddy.htaccessURL Rewrite rule有小小不同的

我們可以使用以下的 URL rewrite rules 去解決 CodeigniterGoDaddy 網站寄存上 .htaccess Url Rewrite 的問題

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L]

Codeigniter GoDaddy URL Rewrite Issue fixed
Hope you find it useful

Disable Directory Listing via .htaccess – 使用 .htaccess 隱藏目錄列表

公司的 Infrastructure Consultant 常常對我們說..
緊記如非必要..一定要停用目錄列表 / Directory Listing
令其他人/或程式不能容地開啟你網站上…不想隨意顯示給訪客看的檔案

解決方法 十分簡單

只要在網頁上的 .htaccess檔案上加上以下的程式碼便可以
# disable directory listing
Options -Indexes

Disable Directory Listing via .htaccess
Hope you find it useful

Apache – Internal Server Error – The server encountered an internal error or misconfiguration and was unable to complete your request. Apache/2.2.16 (Debian) Server at

今天嘗試發佈我的網頁時出現 Internal Server Error
Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, [no address given] and inform them of the time the error occurred, and anything you might have done

that may have caused the error.

More information about this error may be available in the server error log.
Apache/2.2.16 (Debian) Server at sharechiwai.com Port 80
Internal Server Error
之前也有經驗遇到了差不多的問題…
原因是因為 .htaccess檔案 用的mod_rewriteapache沒有啟用的關係所以出現的..
或是因為沒有加上

<IfModule mod_rewrite.c>

</IfModule>

造成的

我也檢查了Apache Error Log 說是
/public_html/.htaccess: without matching section

但是在電腦上打開 .htaccess檔案..看來是正常的

E.G.

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
</IfModule>

這次查核了很久也找不到原因..
最後便找了朋友幫忙了..
之後便解決這個問題…

解決方法:
用了 SSH登入了Web Server
之後用 nano [Linux 的 Text Editor]
打開 這個 .htaccess 檔案..
之後發現檔案的開頭有一些怪獸文字..
.htaccess file
把怪獸文字刪除之後儲存檔案便可以了

原因應該是我的文字的encoding 的問題..
我是用Windows的 而web server是用 Linux

Hope you find it useful