工具/原料
Ubuntu 14.04
方法/步骤
命令行安装Apache
打开"终端窗口",输入"sudo apt-get install apache2"-->回车-->输入"root用户的密码"-->回车-->输入"y"-->回车,安装完成
默认的网站根目录的路径
Apache安装完成后,默认的网站根目录是"/var/www/html",在终端窗口中输入"ls /var/www/html"-->回车-->在网站根目录下有一个"index.html"文件,在ie浏览器中输入"127.0.0.1"-->回车,就可以打开该页面。
Apache的第一个配置文件apache2.conf的路径
在终端窗口中输入"ls /etc/apache2"-->回车-->有一个"apache2.conf"的配置文件。
Apache的第二个配置文件000-default.conf的路径
在终端窗口中输入"ls /etc/apache2/sites-available"-->回车-->有一个"000-default.conf"的配置文件。
修改网站的根目录
1、在终端窗口中输入"sudo vi /etc/apache2/apache2.conf"-->回车-->找到"<Directory /var/www/>"的位置-->更改"/var/www/"为新的根目录就可以了。
2、在终端窗口中输入"sudo vi /etc/apache2/sites-available/000-default.conf"-->回车-->找到"DocumentRoot /var/www/html"的位置-->更改"/var/www/html"为新的根目录就可以了,这里我把它更改为"/var/www/"。
重启Apache
在终端窗口中输入"sudo /etc/init.d/apache2 restart"-->回车-->"输入root用户密码"-->回车-->重启成功。
复制"index.html"文件到"/var/www"目录下
在终端窗口中输入"cp /var/www/html/index.html /var/www/"-->回车-->输入"ls /var/www"--回车-->有一个"index.html"文件,复制成功。
测试更改网站根目录是否成功
在"火狐浏览器"中输入"127.0.0.1"-->能访问到"index.html"文件-->更改成功
uname -m -oecho "/usr/local/apache/lib" >>/etc/ld.so.confhwclock -w #将时间写入BIOSconfig.layout./configure --enable-layout=xxx.layoutapachectl -k startstatusproc httpdinetd#apachectlgracefulgraceful-stopconfigteststatusfullstatus#一个配置文件中启动多个apacheListen 443
DocumentRoot "xx"httpd -D SSL###################################httpd参数-f xx.conf-e warn-E xx.error-v-V version -t test config##################监控APACHE模块mod_statusSetHandler server-status
Order deny,allow
Deny from all
Allow from 192.168.1.2ExtendedStatus On###############################http://ip/server-status?autohttpd -M #what modules have been loaded#############安装mod_log_access模块wget http://www.gjvc.com/software/Apache/modules/mod_log_access-1.03.tar.gztar zxf mod_log_access-1.03.tar.gzcd mod_log_access-1.03#mod MakefileAPACHE_PREFIX=/usr/local/apacheAPACHE_VERSION=2.2.21make &&make install#####################################config add moduleLoadModule env_module libexec/mod_env.soClearModuleListAddModule mod_env.so#########################yum -y install mod_perlorwget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gztar zxvf mod_perl-2.0-current.tar.gz &&cd mod_perl-2.0.5perl Makefile.PL MP_APXS=/usr/local/apache/bin/apxsmake &&make installhttpd -M | grep perl#########加速perl脚本Alias /perl/ /usr/local/apache/cgi-bin/SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
Order allow,deny
Allow from all########################dirctoryfileslocationDirectoryIndexInclude conf/extra/httpd-autoindex.confwebmin gui config toolredhat-config-httpd gui config toolservernameserveraliasdocumentrootifconfig eth0:0 122.222.222.222 netmask xxx upAddHandler cgi-script .cgi .pl###添加自己的CGI脚本处理程序AddHandler myfiletype .xyAction myfiletype /cgi-bin/program.cgiorSetHandler xx
Action xx /xx.cgi virtual ############################script GET /xx.cgiOptions +ExecCGIssipermanent temp seeother gonerewriteengine onRewriteRule pattern substitution flagsRewriteCondpt:继续处理F:403 G:410 L:该URL不再被重写 NC:忽略大小写 P:交给代理处理RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteLogLevel 0 #禁止重写日志RewriteEngine OnRewriteRule ^/$ /FAQ/ [R]CheckSpelling on 无视URL[R,L]#proxyOrder Deny,Allow
Deny from all
Allow from www.xxx.comAllowCONNECT NoProxyProxyBlockProxyDomainProxyPass xx !ProxyPass / http://www.xx.comProxyPassReverse URL不会被重写CacheDefaultExpire 10 secondCacheDisable /bin 不缓存CacheEnable mem/fd/disk /bin 用内存 文件 硬盘内存缓存模块LoadModule cache_module modules/mod_cache.soLoadModule mem_cache_module modules/mod_mem_cache.soCacheEnable mem /src/ww/
MCacheMaxObjectCount 100
MCacheMaxObjectSize 1
MCacheMaxStreamingBuffer 65535
MCacheMinObjectSize
MCacheRemovalAlgorithm GDSF
MCacheSize 10240LoadModule cache_module modules/mod_cache.soLoadModule disk_cache_module modules/mod_disk_cache.soCacheRoot /var
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3mod_file_cache //无法缓存CGICacheFile /src/index.htmlnmapfile /src/index.html图片和动态内容一般转发到其他服务器Proxypass /img http://img.jonsk.comProxypassreverss /img http://img.jonsk.com#禁止代理服务器转发电子邮件Rewriteengine on
Rewriterule "^proxy:[a-z]*://[^/]*:25(/|$)" "-" [F,NC,L]Proxyblock ww.xx.com#mod_dbd链接DB需要安装apr-utils24小时进行分割CustomLog "|/usr/local/apache/bin/rotatelogs log/access_log 86400" commonCustomLog "|/usr/bin/rotatelogs log/access_log_%Y%m%d 86400 480" combinedErrorLog syslog:local7webalizerawstats#不记录日志SetEnvIfNoCase Referer "xxx" no_img=1CustomLog logs/access_log combined env=!no_img${Referer}i 引用页面ab -n 1000 -c 10 http://www.baidu.comRequire valid-usermod_security 安全检查nikto 对网站进行检查chkrootkit 系统漏洞检查HostnameLookups off DNS负载均衡htpasswd -c .htpasswd jonskhtpasswd -D .htpasswd jonshtpasswd .htpasswd jonskAuthType Basic AuthName "Rest Files"AuthUserFile /xxx/apasswdorder deny,allowAllow from all--enable-ssl
1、如何设置请求等待时间
在httpd.conf里面设置:
TimeOut
n
其中n为整数,单位是秒。
设置这个TimeOut适用于三种情况:
2、如何接收一个get请求的总时间
接收一个post和put请求的TCP包之间的时间
TCP包传输中的响应(ack)时间间隔
3、如何使得apache监听在特定的端口
修改httpd.conf里面关于Listen的选项,例如:
Listen
8000
是使apache监听在8000端口
而如果要同时指定监听端口和监听地址,可以使用:
Listen
192.170.2.1:80
Listen
192.170.2.5:8000
这样就使得apache同时监听在192.170.2.1的80端口和192.170.2.5的8000端口。
当然也可以在httpd.conf里面设置:
Port
80
这样来实现类似的效果。
4、如何设置apache的最大空闲进程数
修改httpd.conf,在里面设置:
MaxSpareServers
n
其中n是一个整数。这样当空闲进程超过n的时候,apache主进程会杀掉多余的空闲进程而保持空闲进程在n,节省了系统资源。如果在一个apache非常繁忙的站点调节这个参数才是必要的,但是在任何时候把这个参数调到很大都不是一个好主意。
同时也可以设置:
MinSpareServers
n
来限制最少空闲进程数目来加快反应速度。
5、apache如何设置启动时的子服务进程个数
在httpd.conf里面设置:
StartServers
5
这样启动apache后就有5个空闲子进程等待接受请求。
也可以参考MinSpareServers和MaxSpareServers设置。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)