Apache和php模块问题和选项

回复 收藏

===================================模块问题====================================
今天在配置一些小实验时,遇到了Apache和php模块的问题,记录一下;
缺少模块,虽然不会报错,但也出不来要的效果

php: http://beibing.blog.51cto.com/10693373/1699814
其实php所有模块都在解压包下的ext目录下;假如我们安装curl模块:
cd  /.../ext/curl
/uer/local/php/bin/phpize       php内部命令,生成configure文件
./configure --with-php-config=/usr/local/php/bin/php-config    调用php-config命令
make & make install 之后就会显示被安装到的路径,默认就好
进php.ini配置文件搜 /extension,找到安装模块的地方,添加  extension=curl.so
如果目录下没有需要的模块,可以去下载一个,同样的方式,我觉得没问题;

Apche:
配置访问控制.防盗链等小实验的时候,怎么也做不出来了,然后各种搜文档解决方法,后来终于找到
了思路,因为防盗链调用了一个rewrite模块,但是这个模块没有加载到Apache内:
查看:/usr/local/apache/bin/apachectl  -M
此时我发现其实我好多模块都没有被加载,而且加载到的大都是动态模块,我以前配置2.2版本的时候
大多是静态模块;既然没有我们要怎么加载呢,跟php方法一样吗?
其实他的方法很简单,我发现Apache配置文件里有好多被注释的模块,打开重启一下就好了;
其实如果真找不到,可以参考php编译方法;
甚至去官网找到模块下载,用命令生成./configure,然后编译安装,移动到模块存放路径

================================Apache选项===============================
说明一点:Apache2.2和2.4的语法是通用的,虽然有改变

AllowOverride:是指明Apache服务器是否去找.htacess文件作为配置文件,如果设置为none,那么
服务器将忽略.htacess文件,如果设置为All,那么所有在.htaccess文件里有的指令都将被重写。对于AllowOverride,还可以对它指定如下一些能被重写的指令类型.

通常利用Apache的rewrite模块对 URL 进行重写的时候, rewrite规则会写在 .htaccess 文件里。
但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。
从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override ,即

    AllowOverride None

在 AllowOverride 设置为 None 时, .htaccess 文件将被完全忽略。当此指令设置为 All 时,所有具有 ".htaccess" 作用域的指令都允许出现在 .htaccess 文件中。

而对于 URL rewrite 来说,至少需要把目录设置为
< Directory /myblogroot/>
     AllowOverride FileInfo
< /Directory>

1  AuthConfig  允许使用所有的权限指令,他们包括AuthDBMGroupFile  AuthDBMUserFile   
                      AuthGroupFile  AuthName AuthTypeAuthUserFile和Require
2  FileInfo      允许使用文件控制类型的指令。它们包括AddEncoding  AddLanguage  AddType  
                     DEfaultType ErrorDocument LanguagePriority
3  Indexes     允许使用目录控制类型的指令。它们包括AddDescription   AddIcon  
                     AddIconByEncoding AddIconByType DefaultIcon DirectoryIndex FancyIndexing  
                      HeaderName  IndexIgnore  IndexOptions ReadmeName
4  Limit          允许使用权限控制指令。它们包括Allow Deny和Order
5  Options     允许使用控制目录特征的指令.他们包括Options 和XBitHack Options


1  All               准许以下除MultiViews以外所有功能
2  MultiViews  允许多重内容被浏览,如果你的目录下有一个叫做foo.txt的文件,那么你可以通
                     过/foo来访问到它,这对于一个多语言内容的站点比较有用
3  Indexes     若该目录下无index文件,则准许显示该目录下的文件以供选择
4  IncludesNOEXEC  准许SSI,但不可使用#exec和#include功能
5  Includes                准许SSI
6  FollowSymLinks 在该目录中,服务器将跟踪符号链接。注意,即使服务器跟踪符号链接,它也不
                             会改变用来匹配不同区域的路径名,如果在;标记内设置,该选项会被忽略
7  SymLinksIfOwnerMatch  在该目录中仅仅跟踪本站点内的链接
8  ExecCGI                        在该目录下准许使用CGI


2015-10-22 14:40 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: