分类归档: Linux

apache打开或者关闭列目录功能


问题分析:如果客户端发送一个URL请求, 但是相应的目录里面没有DirectoryIndex属性指定的文件名,那么可以使用mod_autoindex模块来列出该目录的文件名。

解决:编译Apache的时候包含mod_autoindex模块,然后参考下面的例子来设置Apache配置文件:
打开列目录功能:
<Directory /path/to/directory>
Options +Indexes
</Directory>
关闭列目录功能:
<Directory /path/to/directory>
Options -Indexes
</Directory>

注意如果默认访问index.php, index.html,则对/usr/local/apache/conf/httpd.conf进行如下设置:

<IfModule dir_module>
    DirectoryIndex index.html
    DirectoryIndex index.php
</IfModule>

Read: 715

PHP5安装说明(Apache 2 共享模块版本)

1.  gzip -d httpd-2_0_NN.tar.gz
2. tar xvf httpd-2_0_NN.tar
3. gunzip php-NN.tar.gz
4. tar -xvf php-NN.tar
5. cd httpd-2_0_NN
6. ./configure --enable-so
7. make
8. make install

现在已经将 Apache 2.0.NN 安装在 /usr/local/apache。本安装支持可装载模块
和标准的 MPM prefork。之后,可以使用如下命令启动 Apache 服务器:
/usr/local/apache2/bin/apachectl start
如果成功,可以停止 Apache 服务器并继续安装 PHP:
/usr/local/apache2/bin/apachectl stop.

9. cd ../php4-NN

10. 现在需要配置 PHP。在这里可以用各种各样的参数来自定义PHP,例如启动哪些
扩展功能包的支持等。用 ./configure --help 命令可以列出当前可用的所有参
数。在此例中,将给出一个在有 MySQL 支持的 Apache 2 上进行配置的范例。
用户本地的 apxs 的路径可能会不同,事实上,在用户的系统中,它可能被命名为
apxs2。

./configure --with-apxs2=/usr/local/apache2/bin/apxs

11. make
12. make install

如果决定在安装后改变配置选项,只需重复最后的三步,然后需要重新启动 Apache
使新模块生效。无需重新编译。

请注意,除非明确有提示,否则“make install”命令将安装 PEAR、各种 PHP 工具
诸如 phpize,安装 PHP CLI 等等。

13. 配置 php.ini

cp php.ini-dist /usr/local/lib/php.ini

可以编辑 php.ini 文件以修改 PHP 的选项。如果想要把此文件放到另外的位置,
需要在步骤 10 添加 --with-config-file-path=/path 选项。

如果选择 php.ini -recommended,请务必阅读其中的变更的列表,它们将影响
PHP 的执行。

14. 编辑 httpd.conf 文件以调用 PHP 模块。LoadMolude 表达式右边的路径必须指向
系统中的 PHP。以上的 make install 命令可能已经完成了这些,但务必要检查。

对于 PHP 4:
LoadModule php4_module modules/libphp4.so

对于 PHP 5:
LoadModule php5_module modules/libphp5.so

15. 告知 Apache 将特定的扩展名解析成 PHP,例如,让 Apache 将扩展名 .php
解析成 PHP。可以将任何扩展名指定为 PHP,只需添加它们,每一个用空格分隔。
例如,要添加 .phtml:

AddType application/x-httpd-php .php .phtml

通常还将 .phps 扩展名设置成显示高亮的 PHP 源文件,可以这样来完成:

AddType application/x-httpd-php-source .phps

16. 启动 Apache 服务器:
/usr/local/apache2/bin/apachectl start

Read: 725