http,tcp,80stateless 无状态协议
html,www,89年诞生 超文本 ascii 不能为二进制文件(MP3..) MIME·Multipurpose Internet Mail Extensiontcppage,object,jpg
web服务器网站 httpd lighty thttpd nginx
中间件: IIS1 Webspere Weblogic Fusion middleware tomcat,resin JBoss
getenforce 查看SElinux状态getenforce 设置SElinux状态/etc/httpd//var/www/
httpd -t 测试服务正确性
htpasswd -c 第一次使用 htpasswd -cm /etc/httpd/.htpasswd florian htpasswd -m /etc/httpd/.htpasswd gouglas
https
yum install mod_sslcd /etc/httpd/cd conf.d/vim ssl.conf
WEB:http,stateless,cookiehttp 1.0 1.11xx 一般信息2xx 正常信息3xx 正确信息,需要补充4xx 暂时性错误(服务器正常,某个页面出现暂时性错误)5xx 永久性错误
web:httpd,fighttpd,nginx
IIS,WEBSPHERE,WEBLOGIC,TOMCAT.RESIN
apache,NCSA,httpd
a patchy server --> apache
ASF
httpd,/etc/init.d/httpd
/etc/httpd,/var/www/html
cgi mod_perl 通用网关系统 不安全
Options execcgi,indexes
DirectoryIndex 定义服务器主页 DirectoryIndex index.html index.html.var
ACL <Directory "/var/www/html"> options AllowOverride None|Authconfig AuthName "String" AuthType basic AuthUserFile "/etc/httpd/.htpasswd" Require user valid-user|florian douglas order allow,deny Allow from all </Directory>
.htaccess 单目录认证
htpasswd -cm /etc/httpd/.htpasswd florian 只有第一次用-c选项
CGI
虚拟主机: 通过一个web服务器,同时提供多个网站服务,多个虚拟主机
主机,占用一个排它性的资源 基于ip 基于port 基于主机名的虚拟主机
把重心主机取消或做成一个虚拟主机 DocumentRoot 配置虚拟主机
IP: <VirtualHost IP1:port> DocumentRoot "/www/a.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/a.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost>
<VirtualHost IP2:port> DocumentRoot "/www/b.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/b.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost>
PORT: <VirtualHost IP:port1> DocumentRoot "/www/a.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/a.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost>
<VirtualHost IP:port2> DocumentRoot "/www/b.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/b.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost>
主机名 NameVirtualHost IP:80 修改 /etc/hosts 修改地址解析 <VirtualHost IP:80> DocumentRoot "/www/a.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/a.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost>
<VirtualHost IP:80> DocumentRoot "/www/b.com" ServerName ServerAdmin Errorlog Customlog <Directory "/www/b.com"> Options AllowOverride Order allow,deny Allow from all </Directory> </VirtualHost> 修改windows dns解析
https不支持基于主机名的虚拟主机,ssl
tls/ssl
ab:Apache Benchmark apache服务器压力测试
ab -c concurrent -n ab -c 100 -n 10000
LAMP
编译环境:
development librariesdevelopment toolslagacy software development
图形环境: KDE KDE software development Gnome gnome softw development
make menuconfigmake gconfig,GTK2make xconfig,QT
LAMP
apache,mysql,php
rpm:Redhatrpm:Mysql 必须位于/usr/local
/etc/profile 对所有用户有效~/.bash_profile 对当前用户有效
mysql配置: mysql/support-flies cp mylarge.conf /etc/my.cnf cp mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --list mysqld /etc/rc.d/rc3.d/ vim /etc/ld.so.conf ls /etc/ld.so.conf.d/ vim /etc/ld.so.conf.d/mysql.conf /usr/loca/mysql/lib ldconfig [-v | grep mysql] 重新读库关系缓存 头文件: /usr/include 标准位置 ln-sv /usr/local/mysql/include /usr/include/mysql apache: tar jxvf httpd... cd httpd.. ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl -enable-t make make install vim /etc/profile PATH-$PATH.. vim /bin/apachectl #chkconfig: 2345 23 76 写启动脚本 /etc/init.d/httpd 参照,如果本机卸载,找别的系统的 suexec
php: tar jxvf php-5.3.5.tar.bz2 ./configure --prefix=/usr/local/php --with-apxs2=/ust/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with=mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring vim /etc/httpd/httpd.conf LoadModule libphp.so AddType application/x-httpd-php .php DirectoryIndex index.php index.html killall httpd apachectl start