thinkphp隱藏index.php以後500

來源:互聯網
上載者:User
系統linux+php5.3
tp3.1.2

按照TP的手冊說修改 httpd.conf 的 mod_rewrite.so 模組分號
然後還有 AllowOverride None 將None改為 All (這個地方在httpd.conf裡面有5處,我都修改成了All,不知道是否是正確的,還是只是需要修改一處就可以了?)

URL_MODEL設定為2 這個在設定檔裡面也設定成了2,然後在寫一個 ..htaccess 放在網站的根目錄,內容如下


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


然後重新啟動httpd,結果提示 500 Internal Server Error ,開始我以為是我apache的問題,最後我看其他的網站又正常(這台linux有多個網站),最後把 .htaccess刪除以後開啟網站又恢複正常,如果在放.htaccess又出現問題,那就可以說明.htaccess有問題了,是不是這個裡面的內容有問題呢,還是需要php.ini在設定其他的呢



回複討論(解決方案)

RewriteEngine on#如果目錄存在就直接存取目錄不進行RewriteRuleRewriteCond %{REQUEST_FILENAME} !-d#如果檔案存在,就直接存取檔案,不進行下面的RewriteRule.(不是檔案或檔案不存在就執行重寫)RewriteCond %{REQUEST_FILENAME} !-f#所有找不著實際路徑的檔案,統一交給index.php處理RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

TP 自己就帶有 .htaccess

你看看這裡 http://blog.csdn.net/qq1355541448/article/details/21375407

RewriteEngine on#如果目錄存在就直接存取目錄不進行RewriteRuleRewriteCond %{REQUEST_FILENAME} !-d#如果檔案存在,就直接存取檔案,不進行下面的RewriteRule.(不是檔案或檔案不存在就執行重寫)RewriteCond %{REQUEST_FILENAME} !-f#所有找不著實際路徑的檔案,統一交給index.php處理RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

TP 自己就帶有 .htaccess

你看看這裡 http://blog.csdn.net/qq1355541448/article/details/21375407



我按照這個BLOG的地址設定了,也就是大概意思是 httpd.conf裡面要單獨設定,比如一個網站

    LoadModule rewrite_module modules/mod_rewrite.so //我寫在這裡了,    ServerAdmin webmaster@dt.e.com    DocumentRoot /web/xx.com    ServerName xx.com    ErrorLog logs/errun-error_log    CustomLog logs/acrun-access_log common


單獨一個網站就需要單獨開啟一個模組嗎,不能全域配置嗎,我按照這樣的修改以後在重新啟動httpd.啟動是可以,但是報了一個錯誤


然後問題依舊~

只要全域有一個就行了



我這修改以後網站根目錄沒有放.htaccess檔案,這樣提示,根目錄放了也是提示400 Bad Request


400 Bad Request

Bad Request

Your browser sent a request that this server could not understand.



首頁是500,我剛才是直接存取的模組 顯示400,

然後在後面加 xx.com/index.php 訪問也不行了

只要全域有一個就行了



我找到原因了,是預設建立.htaccess的時候許可權問題,因為我是root登入的,所以建立這個檔案的許可權是ROOT,我有把它設定成
777的許可權,但還是一樣,剛才我試著修改成此網站的使用者組和使用者,然後重新整理就可以了。


謝謝徐版,
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.