linux apache 学习笔记

来源:互联网 发布:淘宝订单管理 编辑:程序博客网 时间:2024/05/22 14:57
apache
1. 基本知识
2. 配置文件
3. 虚拟目录
4. 目录访问控制
5. 用户授权
6. 虚拟主机
7. 重写功能
8. 监控功能


apache基本知识:

1.apache主目录/usr/local/apache22.应用程序/usr/local/apache2/bin/httpd3.服务脚本/usr/local/apache2/bin/apachectl option4.配置文件/usr/local/apache2/conf/httpd.conf5.MPM配置文件及虚拟主机配置文件/usr/local/apache2/conf/extra/httpd-mpm.conf/usr/local/apache2/conf/vhosts/healthExpress.conf6.apache默认网站根目录/usr/local/apache2/htdocs7.apache默认首页DirectoryIndex index.php index.html8.apache进程管理重启:/usr/local/apache2/bin/apachectl restart启动:/usr/local/apache2/bin/apachectl start关闭:/usr/local/apache2/bin/apachectl stop平滑重启:/usr/local/apache2/bin/apachectl reload9.查看进程pstree |grep httpd10.查看进程号pgrep -uroot httpd11.查看目前apache线程总数 ps aux | grep http | wc -l12.查看是否启动,端口80netstat -tunpl |grep :80 



apache配置文件(主配置文件+额外配置文件):

ServerRoot "/usr/local/apache2/"#主目录Listen 80#监听80端口LoadModule php5_module modules/libphp5.so#动态加载php模块AddType application/x-httpd-php .php#解析.php文件User apacheGroup apache#改变apache的进程执行者为apacheServerAdmin xxx@email.com#管理员邮箱ServerName 192.168.100.1:80#服务器的域名DocumentRoot "/usr/local/apache2//htdocs"#网站根目录<Directory "/usr/local/apache2//htdocs">Options Indexes FollowSymLinksAllowOverride NoneOrder allow,denyAllow from all</Directory>#允许所有人访问/usr/local/apache2/htdocs目录DirectoryIndex index.php index.html#设置默认首页ErrorLog "logs/error_log"#错误日志放置的地方CustomLog "logs/access_log" common#访问日志放置的地方ScriptAlias /cgi-bin/ "/usr/local/apache2//cgi-bin/"#把shell脚本的页面内容输出到客户端的浏览器上ErrorDocument 404 /missing.html#访问页面不存在,则访问/missing.html页面include "etc/extra/http-vhost.conf"#在主配置文件包含其他地方的配置文件


apache虚拟目录:
Alias /b "/bbs"<Directory "/bbs">Options Indexes MultiViewsAllowOverride NoneOrder allow,denyAllow from all</Directory>#虚拟目录,当客户端访问http://192.168.100.254/b 打开的是/bbs下的网站<VirtualHost *:80># testDocumentRoot /alidata/www/testServerName test.com<Directory /alidata/www/test>Options -Indexes FollowSymLinksAllowOverride all Order allow,denyAllow from all </Directory><IfModule mod_rewrite.c>RewriteEngine OnRewriteRule ^(.*)-htm-(.*)$ $1.php?$2RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2</IfModule></VirtualHost>


apache目录访问控制:

1.Options Indexes MultiViews followsymlinks noneindexes #控制列表页输出multiviews #多视图访问followsymlinks #通过链接文件访问真正目录页面,rewrite功能2.allowoverride none#控制用户认证#allowoverride all在访问目录下建立用户授权文件和用户验证文件0)vim /usr/local/apache2/etc/httpd.conf<Directory "/bbs">Options IndexesAllowOverride allOrder allow,denyAllow from all</Directory>1)用户授权文件:vim /bbs/.htaccessauthname localhostauthtype basicauthuserfile /bbs/.htpasswdrequire valid-user2)用户密码文件:/bbs/.htpasswd3)用/usr/local/apache2/bin/htpasswd生成用户密码文件/bbs/.htpasswd/usr/local/apache2/bin/htpasswd -c /bbs/.htpasswd user1/usr/local/apache2/bin/htpasswd -m /bbs/.htpasswd user24)用户登录授权测试http://192.168.100.1/b

apache虚拟主机:

1.不同ip2.相同ip,不同端口3.相同ip,相同端口,不同域名NameVirtualHost *:80<VirtualHost 192.168.100.1:80>DocumentRoot "/web/baidu"ServerName www.baidu.comErrorLog "logs/www.baidu.com-error_log"CustomLog "logs/www.baidu.com-access_log" common<Directory "/web/baidu">Options IndexesAllowOverride noneOrder allow,denyAllow from all</Directory></VirtualHost>

apache重写功能:

1.配置文件支持rewrite功能<Directory "/web/baidu">Options Indexes followsymlinksAllowOverride allOrder allow,denyAllow from all</Directory>2.在网站下放一个.htaccess文件,在里面rewrite规则vi /web/baidu/.htaccessrewriteengine onrewriterule index_(\d+).html index.php?id=$1rewriterule index/id/(\d+) index.php?id=$1Yii 启用目录级url 根目录下的.htaccessRewriteEngine onRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . index.php

apache的server-status监控功能:

<Location /server-status>SetHandler server-statusOrder deny,allowDeny from allAllow from all</Location>ExtendedStatus Ontest.com/server-status


0 0
原创粉丝点击