当前位置: 操作系统/服务器>linux
本页文章导读:
▪Linux下Apache安装/增加mod_rewrite模块的方法
如果你的服务器apache还没有安装,那很简单,在编译apache时将mod_rewrite模块编译进去就可以,相关文档可以在http://man.chinaunix.net/newsoft …… ew/mod/mod_rewrite. html中找到。如果你的apache已经安装.........
▪Nginx+PHP(FastCGI)搭建高并发WEB服务器(自动安装脚本)第二版
本文是依照张宴的 Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第5版) 编写 原文地址 http://blog.s135.com/nginx_php_v5/ 因为编译过程和等待时间繁琐,于是就自己写了个全自动安.........
▪CentOS下.htaccess不起作用的解决方法
结果点击一个链接直接404 Not Found。悲剧,看来Apache的Rewrite部分有问题了,完全无视掉了.htaccess文件!经过检查Apache的模块,发现Rewrite模块是开启的状态,看来是httpd.conf文件中的配置有点.........
[1]Linux下Apache安装/增加mod_rewrite模块的方法
来源: 互联网 发布时间: 2013-12-24
如果你的服务器apache还没有安装,那很简单,在编译apache时将mod_rewrite模块编译进去就可以,相关文档可以在http://man.chinaunix.net/newsoft …… ew/mod/mod_rewrite. html中找到。如果你的apache已经安装好了,现在只想编译出mod_rewrite.so模块,在apache中进行加载,下面我们就介绍这个方法。
以Fedora操作系统进行举例:
1)首次安装apache,在编译时增加——enable-rewrite选项。
如。/configure ——prefix=/usr/local/apachel ——enable-so ——enable-mods-shared=all ——enable-rewrite ——enable-cache
2)增加mod_rewrite模块
# find . -name mod_rewrite.c //在apache的源码安装目录中寻找mod_rewrite.c文件
# cd PATH/to/mod_rewrite.c //进入包含mod_rewrite.c文件的目录
# /usr/local/apache/bin/apxs -c mod_rewrite.c //apxs应指定绝对路径,在你当前正在使用apache的bin目录里
# /usr/local/apache/bin/apxs -i -a -n mod_rewrite mod_rewrite.la
如果没有什么错误的话,应该在你的apache的modules目录中编译出一个mod_rewrite.so文件。
编辑httpd.conf文件,确认httpd.conf中已经包含mod_rewrite.so的加载语句,如下:
LoadModule rewrite_module modules/mod_rewrite.so
这时,你的apache应该已经支持rewrite了。
vicos注:完成之后,记得重启服务器apache.
以Fedora操作系统进行举例:
1)首次安装apache,在编译时增加——enable-rewrite选项。
如。/configure ——prefix=/usr/local/apachel ——enable-so ——enable-mods-shared=all ——enable-rewrite ——enable-cache
2)增加mod_rewrite模块
# find . -name mod_rewrite.c //在apache的源码安装目录中寻找mod_rewrite.c文件
# cd PATH/to/mod_rewrite.c //进入包含mod_rewrite.c文件的目录
# /usr/local/apache/bin/apxs -c mod_rewrite.c //apxs应指定绝对路径,在你当前正在使用apache的bin目录里
# /usr/local/apache/bin/apxs -i -a -n mod_rewrite mod_rewrite.la
如果没有什么错误的话,应该在你的apache的modules目录中编译出一个mod_rewrite.so文件。
编辑httpd.conf文件,确认httpd.conf中已经包含mod_rewrite.so的加载语句,如下:
LoadModule rewrite_module modules/mod_rewrite.so
这时,你的apache应该已经支持rewrite了。
vicos注:完成之后,记得重启服务器apache.
[2]Nginx+PHP(FastCGI)搭建高并发WEB服务器(自动安装脚本)第二版
来源: 互联网 发布时间: 2013-12-24
本文是依照张宴的
Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第5版) 编写
原文地址
http://blog.s135.com/nginx_php_v5/
因为编译过程和等待时间繁琐,于是就自己写了个全自动安装的shell脚本,此脚本可以随意修改,转载请注明出处。
这篇文章为这个系列的第二版,在第一版的基础上加入
1、日志切割
2、智能选择yum或者rpm安装
下载地址
注意:如果不能使用yum源,请放入系统光盘,单张dvd的,如果是多张光盘请务必在光盘里找到所有要安装的rpm包,拷贝到一个目录,并修改
umount /dev/cdrom
mkdir /mnt/cdrom_$$
mount /dev/cdrom /mnt/cdrom_$$
cd /mnt/cdrom_$$/
RPMPATH=$(find $(pwd) -name ‘kernel-2*')
RPMPATH=${RPMPATH%/*}
cd ${RPMPATH}
为
cd yourdir
yourdir为你所有包的存放根路径
下载后
#unzip install.zip
#chmod +x install.sh
#./install.sh
请以root权限执行
注意:此脚本很多参数是按照大负载服务器的配置,如果是虚拟机做实验,可能造成有些服务启动不起来,比如说mysql的参数需要大内存支持,此时请手动修改配置参数
Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第5版) 编写
原文地址
http://blog.s135.com/nginx_php_v5/
因为编译过程和等待时间繁琐,于是就自己写了个全自动安装的shell脚本,此脚本可以随意修改,转载请注明出处。
这篇文章为这个系列的第二版,在第一版的基础上加入
1、日志切割
2、智能选择yum或者rpm安装
下载地址
注意:如果不能使用yum源,请放入系统光盘,单张dvd的,如果是多张光盘请务必在光盘里找到所有要安装的rpm包,拷贝到一个目录,并修改
umount /dev/cdrom
mkdir /mnt/cdrom_$$
mount /dev/cdrom /mnt/cdrom_$$
cd /mnt/cdrom_$$/
RPMPATH=$(find $(pwd) -name ‘kernel-2*')
RPMPATH=${RPMPATH%/*}
cd ${RPMPATH}
为
cd yourdir
yourdir为你所有包的存放根路径
下载后
#unzip install.zip
#chmod +x install.sh
#./install.sh
请以root权限执行
注意:此脚本很多参数是按照大负载服务器的配置,如果是虚拟机做实验,可能造成有些服务启动不起来,比如说mysql的参数需要大内存支持,此时请手动修改配置参数
[3]CentOS下.htaccess不起作用的解决方法
来源: 互联网 发布时间: 2013-12-24
结果点击一个链接直接404 Not Found。悲剧,看来Apache的Rewrite部分有问题了,完全无视掉了.htaccess文件!经过检查Apache的模块,发现Rewrite模块是开启的状态,看来是httpd.conf文件中的配置有点问题了。回想起之前在Ubuntu Server下配置Rewrite也是启用了一个叫做“AllowOverride”的属性为“All”才正确开启了Rewrite,这次手动配置VirtualHost的时候并没有写上这两句,看来就是这个问题了。
立马输入 :
#vim /etc/httpd/conf/httpd.conf
找到自己的VirtualHost设置部分,添上
<Directory />
AllowOverride All
</Directory>
上面这段的Directory /的“/”为你的www路径,如放在“/var/www/html”路径下就写为“<Directory /var/www/html>”,以此类推。保存后重启httpd服务:
#/etc/init.d/httpd restart
再次进入WordPress,点击一个链接,成了!问题解决。看来这个“AllowOverride”很不简单啊!于是上网找了一圈,发现这个是控制.htaccess的关键点所在。除了需要在Apache中打开Rewrite,以及正确设置.htaccess文件名之外,还需要对目录的AllowOverride进行配置,因为默认情况下AllowOverride值为None,这样会完全忽略.htaccess文件。
此外,除了All和None这两个值之外,AllowOverride还有很多个值,他们的含义分别如下:
AuthConfig
允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo
允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes
允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit
允许使用控制主机访问的指令(Allow, Deny, Order)。
Options[=Option,...]
允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。
这样以来,加上All和None,一共是7个可选的值了。看来又增长了不少的见识呀!以后再出现类似问题,不管哪个Linux下,我都能轻松找到问题所在了!
立马输入 :
#vim /etc/httpd/conf/httpd.conf
找到自己的VirtualHost设置部分,添上
<Directory />
AllowOverride All
</Directory>
上面这段的Directory /的“/”为你的www路径,如放在“/var/www/html”路径下就写为“<Directory /var/www/html>”,以此类推。保存后重启httpd服务:
#/etc/init.d/httpd restart
再次进入WordPress,点击一个链接,成了!问题解决。看来这个“AllowOverride”很不简单啊!于是上网找了一圈,发现这个是控制.htaccess的关键点所在。除了需要在Apache中打开Rewrite,以及正确设置.htaccess文件名之外,还需要对目录的AllowOverride进行配置,因为默认情况下AllowOverride值为None,这样会完全忽略.htaccess文件。
此外,除了All和None这两个值之外,AllowOverride还有很多个值,他们的含义分别如下:
AuthConfig
允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo
允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes
允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit
允许使用控制主机访问的指令(Allow, Deny, Order)。
Options[=Option,...]
允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。
这样以来,加上All和None,一共是7个可选的值了。看来又增长了不少的见识呀!以后再出现类似问题,不管哪个Linux下,我都能轻松找到问题所在了!
最新技术文章: