我想将我devise良好的一组http错误文档存储在DocumentRoot之外。 Alias /errors /data/opt/apache-httpd-2.0.63/htdocs/errorpages/ <Directory "/data/opt/apache-httpd-2.0.63/htdocs/errorpages/"> order deny,allow allow from all </Directory> ErrorDocument 500 /errors/500.html ErrorDocument 404 /errors/404.html ErrorDocument 401 /errors/default.html ErrorDocument 403 /errors/default.html ErrorDocument 502 /errors/default.html ErrorDocument 503 /errors/default.html 但是,当我这样做时,我所得到的是“所请求的URL / error / default.html导致错误”。 在Apache 2.0中是否可以像这样一起使用mod_alias和ErrorDocument指令?
我在Ubuntu上运行apache2。 我想像这样设置到期标题。 ExpiresActive On <FilesMatch "\.(ico|gif|jpe?g|png|js|css)$"> ExpiresDefault "access plus 1 year" </FilesMatch> 我深信,它会caching一个像www.example.com/images/a.gif一年的url。 我的问题是什么关于这样的url。 www.example.com/javascripts/all.js?123456。 假设上面的url被caching了。 现在,如果我更改的url为www.example.com/javascripts/all.js?abcdef将浏览器请求新的js文件? 基本上我试图findcaching浏览器考虑完整的url,包括问号后的数据。 另外我目前的虚拟主机configuration是这样的 <VirtualHost xx.xx.xx.xx:80> ServerName xxxx ServerAlias xxxxx DocumentRoot /home/xxx/current/public <Directory "/home/xxxx/current/public"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> <Location /> # Insert filter SetOutputFilter DEFLATE # Netscape 4.x has some problems… BrowserMatch ^Mozilla/4 gzip-only-text/html […]
我已经注意到我的服务器正在发生新的事情,我无法弄清楚是什么让它发生。 我希望有人在这个问题上有经验,可以帮我find一个解决scheme,让它停止。 我今晚在我的ubuntu服务器上执行了重启,我已经在slicehost.com上运行了。 一切都运行良好,直到我开始Apache。 我得到以下错误。 *启动Web服务器apache2(98)地址已经在使用:make_sock:无法绑定到地址0.0.0.0:80没有可用的侦听套接字,closures无法打开日志…失败! 使用netstat -ltnp | grep ':80'进一步的研究 netstat -ltnp | grep ':80'将显示以下内容: tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3948 / apache2 然后我可以kill 3948和Apache启动像正常。 PID 3948不断变化到不同的数字。 这是新的,而且自从我没有发生这种情况,我成功启动后,我所做的唯一的事情就是卸载phpmyadmin的手动安装,然后使用aptitude install命令重新安装它。 Phpmyadmin现在在服务器上运行良好,但我不明白这个错误意味着什么,或者我可以如何解决它。 任何人可能会提供一些见解将不胜感激! 更新:运行ls -la /etc/init.d/我得到以下输出。 @prix它看起来不像httpd在这个列表中。 total 308 drwxr-xr-x 2 root root 4096 2010-06-08 16:38 . drwxr-xr-x 73 root root 4096 2010-08-18 14:56 .. […]
我想故意抛出一个任意的错误。 <LocationMatch> … </LocationMatch>导演之间的适当的东西。 例如: <LocationMatch "^/myurl/.+"> ThrowError 503 </LocationMatch> <LocationMatch "^/anotherurl/.+"> ThrowError 504 </LocationMatch> <LocationMatch "^/safeurl/"> # not throwing an error from this path Options +Indexes </LocationMatch> 我可以用什么来代替ThrowError 503 ? 我想强制服务器告诉用户我select的任何错误代码(例如404,403,501等)作为testing我的规则的一种手段。 最坏的情况如果我实际上不能在浏览器上抛出一个错误,我想要一个写入error_log的消息。 我知道我可以使用mod_rewrite来执行RewriteRule .* – [R=503,L]但是我只想使用核心模块(我没有将mod_rewrite编译到我的Apache中)。 更新 :已经发现我可以说RedirectMatch 410 . 这将向用户报告“消息”消息,作为一个潜在的解决scheme。
我刚刚安装了ssl的Apache 2,但是当我尝试启动过程中出现错误 httpd starting. exit status 127 即使使用LogLevel debugconfiguration了httpd.conf,也没有日志。 我还能在哪里寻找线索来解决这个问题?
我使用exec()从PHP运行at命令后,用cat检查/var/spool/cron/atjobs/a001cf01570e44 。 它看起来像是at脚本中join了许多APACHE环境variables。 #!/bin/sh # atrun uid=33 gid=33 # mail www-data 0 umask 22 APACHE_RUN_DIR=/var/run/apache2; export APACHE_RUN_DIR APACHE_PID_FILE=/var/run/apache2.pid; export APACHE_PID_FILE PATH=/usr/local/bin:/usr/bin:/bin; export PATH APACHE_LOCK_DIR=/var/lock/apache2; export APACHE_LOCK_DIR LANG=C; export LANG APACHE_RUN_USER=www-data; export APACHE_RUN_USER APACHE_RUN_GROUP=www-data; export APACHE_RUN_GROUP APACHE_LOG_DIR=/var/log/apache2; export APACHE_LOG_DIR PWD=/home/jordanarseno/webroot/public_html/myapp; export PWD cd /home/jordanarseno/webroot/public\_html/myapp || { echo 'Execution directory inaccessible' >&2 exit 1 } curl -k […]
我已经看到很多包含指令的httpd.conf文件,例如IBM的这个指令: <Location /server-status> SetHandler server-status Order Deny,Allow Deny from all Allow from all </Location> 事实上,在Google上search“从所有人都拒绝”的确切短语会返回近300万条结果。 我对这个指令的理解是,根据指定的Order ,Apache会拒绝你访问/server-status不pipe你是谁,但立即覆盖这个决定,并允许你访问。 它是否正确? 上述指令和下一个指令之间是否存在任何function上的(甚至是理论上的或哲学上的)区别? <Location /server-status> SetHandler server-status Order Deny,Allow Allow from all </Location>
我有一个运行在Apache / mod_php上的PHP web应用程序,可以正常工作几天,然后失败,返回500内部服务器错误。 我已经打开了debugging日志logging,并没有看到任何指向原因的日志。 解决此问题的唯一方法是重新启动Apache。 我想我需要运行系统跟踪来监控Apache进程,并使用Apache工作台或其他负载testing工具强制其失败。 问题是,我从来没有这样做过,所以我不知道我会怎么做。 我正在运行CentOS 6.x. 我将使用什么工具来运行系统跟踪,我将如何调用它?
是否可以configurationApache来可靠地生成W3C扩展格式的访问日志,由IIS生成的格式? 我似乎无法追踪分隔符,字段格式等细节的详细说明。毫无疑问,有一个可以做到这一点的apache日志格式string,但我没有足够的信息来创build,甚至不知道如果它能以正确的格式写入数据。 我正在使用不支持自定义日志文件格式的Web访问日志分析器(SmarterStats) – 它只支持通用日志格式或W3C扩展格式。 不幸的是CLF只有非常有限的数据,所以不允许特别有趣的分析。
在Apache 2中, ErrorDocument和mod_rewrite之间的顺序是否已定义和可预测? 我找不到有关此文档的任何内容。 例如,如果我有一个.htaccess文件中的以下内容(从标准的Drupal .htaccess文件中剥离) ErrorDocument 404 /index.php <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^ index.php [L] </IfModule> 这将处理/favicon.ico,ErrorDocument或RewriteRule的请求? 这将始终是相同的,服务器到服务器,还是可以根据Apacheconfiguration的不同而有所不同?