APACHE服务器500错误解决方法
APACHE服務(wù)器500錯(cuò)誤解決方法與強(qiáng)制跳轉(zhuǎn)
轉(zhuǎn)https://blog.csdn.net/u011685720/article/details/48680401
遇到500問(wèn)題 可以如下解決
1.APACHE沒(méi)開(kāi)啟rewrite模塊。
解決辦法:編輯apache的http.conf文件,找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉前面的#,重啟APACHE.
2 .htaccess文件有錯(cuò)誤。通常是因?yàn)閷懭肓瞬缓险Z(yǔ)法的規(guī)則。
解決辦法:刪除該目錄中的.htaccess即可。如果還是不行,再刪除上級(jí)目錄的.htacess,如此反復(fù)。
3,權(quán)限問(wèn)題,同時(shí)查看/var/log/apache2/error.log日志。
于是我找到了這么一個(gè)東西
1
在httpd.conf文件里使下面模塊生效
LoadModule rewrite_module modules/mod_rewrite.so
2
httpd.conf配置文件或者是在httpd-vhost.conf文件里修改
<Directory "C:/Apache2.2/docs/1.com">
Options Indexes FollowSymLinks
AllowOverride All
//上面是http-https時(shí)需要添加的語(yǔ)句
Order allow,deny
Allow from all
</Directory>
3
在網(wǎng)站根目錄下面添加該文件“.htaccess” 目錄訪問(wèn)控制文件,并添加如
下內(nèi)容:
RewriteEngine on #開(kāi)啟重定向引擎
RewriteBase / #可以不設(shè)置
RewriteCond %{SERVER_PORT} !^443$ #非443端口的數(shù)據(jù)全部進(jìn)行重定向
RewriteRule ^.*$https://%{SERVER_NAME}%{REQUEST_URI} [L,R] #把需要重定向的內(nèi)容重定向到https
.htaccess文件不能在win平臺(tái)下自己創(chuàng)建,可以使用下面鏈接在線生成該文件:http://www.wangqu.org/htaccess/
RewriteEngine on #開(kāi)啟重定向引擎
RewriteBase / #可以不設(shè)置
RewriteCond %{SERVER_PORT} !^443(或者其他端口)$ #非443端口
的數(shù)據(jù)全部進(jìn)行重定向
RewriteRule ^.*$https://%{SERVER_NAME}%{REQUEST_URI} [L,R] #
把需要重定向的內(nèi)容重定向到https
如果是默認(rèn)不是443端口,那么可以在最后一行寫成這樣
RewriteRule ^.*$https://www.domain.com:8443
當(dāng)然如果默認(rèn)是443的話,也可以這么寫
RewriteRule ^.*$https://www.domain.com
該 .htaccess 需要放置在網(wǎng)站的根目錄下面才可以生效
含義是這樣的:為了讓用戶訪問(wèn)傳統(tǒng)的http://轉(zhuǎn)到https://上來(lái),用了一下
rewrite規(guī)則:
第一句:?jiǎn)?dòng)rewrite引擎
第二句:rewrite的條件是訪問(wèn)的服務(wù)器端口不是443端口
第三句:這是正則表達(dá)式,^是開(kāi)頭,$是結(jié)束,/?表示有沒(méi)有/都可以(0或
1個(gè)),(.*)是任何數(shù)量的任意字符
整句的意思是講:?jiǎn)?dòng)rewrite模塊,將所有訪問(wèn)非443端口的請(qǐng)求,url地址
內(nèi)容不變,將http://變成https://。
5、查看一下httpd.conf,如果以下幾項(xiàng)給注釋掉了,就打開(kāi)這些選項(xiàng):
LoadModule rewrite_module libexec/mod_rewrite.so
AddModule mod_rewrite.c
apache出現(xiàn) internal server error 500錯(cuò)誤常見(jiàn)原因
ubuntu apache .htaccess 500錯(cuò)誤500 internal error with RewriteEngine on
系統(tǒng)ubuntu 14.04
原因apache配置沒(méi)有載入rewrite模塊,ubuntu中apache的配置模塊和配置虛擬主機(jī)是通過(guò)a2ensite a2enmod命令,不是直接去修改apache的配置,間接修改apache的配置實(shí)現(xiàn)的....這兩個(gè)命令的詳細(xì)解釋自行man
解決sudo a2enmod rewrite
sudo service apache2 restart
我是從zf2配置.htaccess中遇到這樣的問(wèn)題
后記
確認(rèn)ubuntu上rewrite模塊是否安裝: ls /etc/apache2/mods-available | grep rewrite
rewrite.load 有這個(gè)文件,默認(rèn)都有安裝
確認(rèn)apache配置是否載入 rewrite ls /etc/apache2/mods-enabled | grep rewrite
rewrite.load 有這個(gè)文件表示已經(jīng)載入配置
參考:http://stackoverflow.com/questions/19718919/500-internal-error-with-rewriteengine-on-htaccess-on-localhost-with-wamp
https://www.digitalocean.com/community/articles/how-to-set-up-apache-virtual-hosts-on-ubuntu-12-04-lts
PHP在Apache下500錯(cuò)誤的原因
g糾結(jié)了半天,才發(fā)現(xiàn)問(wèn)題的癥結(jié):原來(lái)的PHP 關(guān)閉了錯(cuò)誤的顯示。
下面講解如何開(kāi)啟錯(cuò)誤提示步驟:
1. 打開(kāi)php.ini文件。
以我的ubuntu10.10為例,這個(gè)文件在: /etc/php5/apache2 目錄下。
2. 搜索并修改下行,把Off值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改為
error_reporting = E_ALL | E_STRICT
4. 修改Apache的 httpd.conf,
以我的 Ubuntu 為例, 這個(gè)文件在:/etc/apache2/ 目錄下,這是一個(gè)空白文件。
添加以下兩行:
php_flag display_errors on
php_value error_reporting 2039
5. 重啟Apache,就OK了。
重啟命令: :sudo /etc/init.d/apache2 restart
thinkphp6又一個(gè)坑 apache偽靜態(tài) .htaccess在本地調(diào)試500錯(cuò)誤問(wèn)題
總結(jié)
以上是生活随笔為你收集整理的APACHE服务器500错误解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JS进阶 | 分析JS中的异步操作
- 下一篇: linux搭建sftp服务器