Articles of httpd

如果只使用虚拟主机,我应该在httpd.conf中将ServerName设置为什么?

我有一个有两个专用IP的Linux服务器,我用它来主持10个不同的站点,使用Apache的虚拟主机function。 每个站点都有自己的域名,我使用NameVirtualHosts来根据请求的域来将请求定向到正确的文件夹,任何不匹配的东西(比如input一个IP地址)都会被定向到默认页面<VirtualHost _default_:*> 。 我的问题是,因为我有多个IP,所有可能的请求都作为虚拟主机处理,我应该如何将ServerName设置为虚拟主机之外的httpd.conf文件? 它甚至重要吗?

加载httpd启动后,httpd加载'Test Page'

我最近添加了httpd在启动过程中启动这样做: cd /etc/rc.d/rc5.d/ ln -s /etc/init.d/httpd S80httpd 虽然httpd是在启动时启动的,但似乎是在位于/etc/httpd/conf/httpd.conf中的httpd.conf中设置的DocumentRoot不起作用,并且Fedora Test Page被加载。 当我用httpd -k start手动启动httpd httpd -k start ,一切正常。 我可能还没有正确理解RC脚本s<number>script / k<number>script命名约定的<number>部分。 虽然,我知道它是用来表示脚本在runlevel控制脚本运行期间的执行顺序。 我从启动时如何自动启动Apache获取S80httpd 。 究竟发生了什么? 我正在使用Fedora 15和Apache/2.2.21 。

为什么这个模式在匹配preg_match时不符合RewriteCond中的QUERY_STRING?

这是我的.htaccess文件。 RewriteEngine on RewriteCond %{QUERY_STRING} ^(run=[a-z0-9A-z]{13})$ RewriteRule %{QUERY_STRING} \? [L] 我所做的就是为所有QUERY_STRING重写QUERY_STRING ,类似于run=4f13665700694 ,什么也不做。 URL示例: http://thinkingmonkey.me/runs/?run=4f13665700694 : http://thinkingmonkey.me/runs/?run=4f13665700694 。 所以,RewriteCond应该匹配。 但是,上述不起作用。 但是,模式似乎是正确的。 因为, preg_match和RewriteRule使用PCRE – Perl Compatible Regular Expressions 。 我尝试使用preg_match 。 $subject = "run=4f13665700694"; $pattern = "/^(run=[a-z0-9A-z]{13})$/"; echo preg_match($pattern, $subject); 除了上面的例子,还会输出: 1 即成功匹配。 我不懂为什么。 我在这里错过了什么?

CentOS 5.7 Apache读取public_html文件

我刚刚完成安装Apache到我的服务器。 如果我访问该网站,会出现apache 2testing页面,通知安装成功。 然后,我把我的网站下public_html。 但是apache仍然不能访问public_html文件夹。 这是我第一次使用Linux作为我的OS服务器的经验。

如何从一个端口redirect到另一个?

我有一个域,我在不同的端口上运行两个不同的Web应用程序。 一个Java web应用程序的例子:8888 / foo 例如一个PHP网站:8080 / bar 要求是,如果用户试图访问例如:8888或example:8080的根,那么用户应该被redirect到例如:8888 / foo。 我怎样才能达到这个要求?

libapache2-mod-auth-pgsql和ssl-cert在CentOS中相当

我之前从Ubuntu切换到CentOS。 现在,我面临这个问题: 试图安装我之前安装在Ubuntu中的软件,我停在了需要安装上述模块的地方: libapache2-mod-auth-pgsql和ssl-cert 。 任何人都可以告诉我如何将它们安装在CentOS或一些等效的库? 谢谢!

apache2.conf如何根据url参数设置模块的参数

我需要为模块设置一个参数 (具体是通过设置一个参数GeoIPEnable On来激活geoencoding模块) 在httpd.conf中基于请求url中的参数(例如geo = true)。 如何才能做到这一点?

Apache打印语法错误到控制台而不是日志文件

我的一些Apacheconfiguration失败了,因为(因为控制面板中的错误,但我需要一个解决方法,直到这将得到解决): /etc/init.d/httpd start Starting httpd: Syntax error on line 30 of /home/apache/conf/domains/mydomain.conf: RUidGid takes two arguments, Minimal uid or gid file/dir, else set[ug]id to default (User,Group) [FAILED] 我想写一个脚本,会自动删除这样的configuration,但是当我input/etc/init.d/httpd start >> error.log没有写入文件。 当我尝试从/etc/init.d/httpd start | grep Syntax grep一行时, /etc/init.d/httpd start | grep Syntax发生同样的情况 /etc/init.d/httpd start | grep Syntax 。

脚本在apache / php更新后停止工作

我已经更新了PHP到5.3.1,现在我的vps上托pipe的一些脚本已经停止工作。 这包括whmcs和fantastico。 所有这些脚本都显示一个空白页面。 现在debugging每一个脚本将花费大量的时间,客户对此并不满意。 你们有什么build议: 下坡 debugging一切

SQLSTATE :一般错误:2006 MySQL服务器已经消失

服务器详情: RAM: 16GB HDD: 1000GB OS: Linux 2.6.32-220.7.1.el6.x86_64 Processor: 6 Core 请参阅下面的链接我的#顶部预览: 我经常可以在我的plesk面板中看到标题中提到的错误,我的/etc/my.cnfconfiguration如下: bind-address=127.0.0.1 local-infile=0 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql max_connections=20000 max_user_connections=20000 key_buffer_size=512M join_buffer_size=4M read_buffer_size=4M read_rnd_buffer_size=512M sort_buffer_size=8M wait_timeout=300 interactive_timeout=300 connect_timeout=300 tmp_table_size=8M thread_concurrency=12 concurrent_insert=2 query_cache_limit=64M query_cache_size=128M query_cache_type=2 transaction_alloc_block_size=8192 max_allowed_packet=512M [mysqldump] quick max_allowed_packet=512M [myisamchk] key_buffer_size=128M sort_buffer_size=128M read_buffer_size=32M write_buffer_size=32M [mysqlhotcopy] interactive-timeout [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid open_files_limit=8192 由于我的服务器httpd conf设置为/etc/httpd/conf.d/swtune.conf ,configuration如下:at prefork.c: <IfModule […]