我正在build立一个虚拟主机的networking服务器,我很难得到这个403 Forbidden的错误。 这个错误声称有些东西指向root / ,但是指令被设置为域的任何请求被路由到它的目录: <VirtualHost *:80> DocumentRoot /var/www/twistedpleasures ServerName twistedpleasures.net </VirtualHost> 这里是apache2.conf # This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See http://httpd.apache.org/docs/2.2/ for detailed information about # the directives and /usr/share/doc/apache2-common/README.Debian.gz about # Debian specific hints. # # # Summary […]
我有一个带有Apache2的多工作站局域网,服务于10.0.0.3:80的网站,并在Ubuntu Linux上运行。 这个局域网是通过一个路由器从另一个局域网中分割出来的,这个局域网上的所有机器都可以接收到他们的IP。 以下概念是可行的还是有一个更明智的方法? 目标是使局域网的行为类似于no-ip.com在互联网上的function。 考虑到这一点,我想用CentOS 6设置其中一个工作站,并将其configuration为DNS服务器和configuration为通配子域名的apachenetworking服务器。 该服务器的所有子域名应指向IP地址为10.0.0.3:80的Ubuntu服务器上的网站。 因此,例如,在CentOS服务器上使用local.lan域,来自LAN上任何浏览器的任何请求(即* wildcard.local.lan)将被parsing到驻留在Ubuntu web服务器上的站点,而所有非本地地址被定向到互联网。 我的一些担心是: 将dnsmasq作为该configuration中的DNS服务器就足够了吗? 什么是这个多服务器configuration中的dnsmasq和apache的一些关键的configuration注意事项? 我仍然可以使用IP的路由器? 有更简单的select吗?
编辑:我刚刚得到了“风滚草”徽章。 没有人对我有任何想法或指引? 请好吗? 第一次用户; 请温柔。 :-)(如果你不喜欢我的问题,我将不胜感激,为什么…) 我正在政府服务器商店签订合同,为政府其他领域的多个客户群提供networking服务。 我的雇主要求我看看其他商店在类似的情况下如何处理configuration文件,以及是否有任何关于这个问题的最佳实践。 我很确定有很多安装在一个Apache安装中运行多个VirtualHosts,但令人惊讶的是,我不能在网上find任何关于人们如何处理configuration文件布局的东西,所以希望你们中的一些聪明的人在ServerFault上可能有一些想法或指针对我来说。 目前的设置 – 这对我来说是合乎逻辑的 – 是每个客户站点都有自己的根目录 – 所以: /客户/ TPS-报告/ /客户/傻,散步/ /客户/部委的魔法/ 等等 – 每个目录都有一个/ htdocs,/ cgi-bin和/ conf(等等)。 主要的/etc/apache/httpd.conf只包含Include语句(和很多注释),最后一个是: 包括/etc/apache/vhosts/*.conf vhosts目录包含符号链接: tpsrept.conf – > /client/tps-reports/conf/tpsrept.conf sillywk.conf – > /client/silly-walks/conf/sillywk.conf mom.conf – > /client/ministry-of-magic/mom.conf 每个.conf文件都包含实际的NameVirtualHost定义和一个巨大的<VirtualHost 192.168.12.34>节 – 其中包含了关于特定站点的所有内容。 这个想法是,客户端可以访问他们自己/ client / xx目录中的内容,所以他们可以在configuration中与其相关的部分更改内容。 正如我上面提到的那样,这对我来说似乎相当符合逻辑,但是我想知道你们中的任何一位聪明人是否意识到这种布局的潜在问题,或者是为什么它是一个好主意。 特别是其他地方怎么做呢? 这种事情有没有“最佳做法”? 非常感谢您的时间和任何你可能有的想法。
有谁知道为什么Apache2和MySQL在服务器重启或apt-get更新后不能运行? 我目前正在运行Ubuntu 12.04 LTS服务器 在/etc/init.d/中有对应于apache2和mysql的文件,但是它们只能通过手动启动/重启来工作。 他们从不自动运行。 理想情况下,我希望他们不断地运行,因为网站运行需要他们不断。 apache2的头文件与我见过的其他文件并没有什么不同: #!/bin/sh ### BEGIN INIT INFO # Provides: apache2 # Required-Start: $local_fs $remote_fs $network $syslog $named # Required-Stop: $local_fs $remote_fs $network $syslog $named # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop apache2 web server ### END INIT INFO 如果任何人可以帮助我在哪里看或以前见过这个问题,请欣赏帮助。 […]
我有一个非常奇怪的问题,在Apache中启用SSL支持后,我只能通过SSL访问我的网站,而不是通过HTTP。 我可以确认,Apache确实在端口80和443(根据netstat)监听。 此外,Apache访问日志显示的请求 – 这只是通过http进入超时结果,我实际上无法达到的内容。 就像我说的通过https工作。 这是我的httpd.conf: http : //pastebin.com/kG2dPjJ2 这里是我的httpd-ssl.conf: http : //pastebin.com/thqvjgGJ 任何人都可以发现这些configuration的任何问题? 或者有什么build议? 我已经search和search,但似乎很less有人经历了相同的。 另外值得一提的是,我对这些configuration和工作设置进行了比较,我什么也找不到。
我试图设置FastCGI但不断收到以下错误信息: Installing : mod_fastcgi-2.4.6-2.el6.rf.x86_64 Non-fatal POSTIN scriptlet failure in rpm package mod_fastcgi-2.4.6-2.el6.rf.x86_64 semodule: SELinux policy is not managed or store cannot be accessed. warning: %post(mod_fastcgi-2.4.6-2.el6.rf.x86_64) scriptlet failed, exit status 1 Verifying : mod_fastcgi-2.4.6-2.el6.rf.x86_64 selinux在我的系统上是禁用的,我假设它没有安装在第一个地方,因为我找不到/ etc / selinux / conf文件。 任何想法将不胜感激。 谢谢。
当我从浏览器运行perl CGI脚本时,它会在apache错误日志中给出下面的错误。 它没有得到服务器的响应。 当我从命令提示符运行我的脚本,它工作正常。 我在我的perl CGI脚本中使用下面的代码 my %opts = ( user => "uname", password => "password", ctl_dir => "/tmp/.libnet-openssh-perl", strict_mode => 0, ); my $ssh = Net::OpenSSH->new("192.168.0.201",%opts,master_opts => ['-vvv', -o => "StrictHostKeyChecking=no" ] ); $ssh->system("ls /home/sysadmin/") or die "remote command failed: " . $ssh->error; 错误日志: [Tue Jul 01 13:05:52 2014] [error] [client 192.168.0.136] debug3: preferred […]
(注意:如果您熟悉suPHP设置,并且想要跳过问题的详细信息,可以在最后find我想要实现的内容的快速解释) 我目前正在设置一台机器来承载几个网站,属于几个用户。 为了方便起见,这些用户存储在MySQL数据库中。 libnss-mysql和pam-mysql用来连接这个后端和Linux,因此允许这些用户login和使用机器的服务。 存储在MySQL数据库中的每个用户都属于users组。 这些用户中的每一个都在/home/users下被提供一个主目录。 例如,用户test的文件可以在/home/users/test下find。 该目录具有以下所有权/权限: drwx–x— test www-data /home/users/test 同样,网站索引(和其他文件)显示以下权限: -rw-r—– test www-data /home/users/test/index.php -rw-r—– test www-data /home/users/test/robots.txt 为了允许访问这些网站,在Apache中使用DBD并依靠MySQL后端来configuration以下VirtualHost。 <VirtualHost *:80> ServerName * DBDriver mysql DBDParams host=localhost,user=user,pass=pass,dbname=db DBDocRoot "SELECT document_root FROM users WHERE domain=%s" HOSTNAME </VirtualHost> 如果与test相关的域是example.com,Apache将使用DBD将该域与/home/users/test匹配并提供其内容。 例如, example.com/index.php会将索引传递给PHP解释器,而example.com/robots.txt将使Apache将该文件作为静态内容传递。 现在,为了保护我的用户,我想限制他们的PHP脚本的权限。 通过上面的设置,PHP脚本通过Apache,并由mod_php解释。 事情是:由www-data:www-data运行的Apache进程,可以访问任何脚本的所有家庭 。 为了防止这种情况,我决定安装suPHP,但这里是我的问题:suPHP和DBD MySQL查询实际上没有很好的配合: 如果我以偏执模式编译suPHP,我必须为所有请求设置一个静态用户和组。 但是, /home/users/test脚本必须以test:users身份运行,而/home/users/othertest必须以其他/home/users/othertest运行。 这是configuration中发生问题的地方: <VirtualHost *:80> ServerName […]
我正在玩不同的configuration设置。 目前我在同一台机器上有80端口的Varnish-cache,70端口的Apache2和90端口的Nginx。 Varnish的configuration方式默认与Nginx通信,例如:config .host = "localhost"; .port = "90"; .connect_timeout = 60s; .first_byte_timeout = 300s; .between_bytes_timeout = 300s; .probe = basic; 我的问题是,如果Nginx死了,如何使Varnish fallback到Apache? 使用Apache的Varnish的基本configuration是这样的。 .host = "localhost"; .port = "70" .connect_timeout = 60s; .first_byte_timeout = 300s; .between_bytes_timeout = 300s; .probe = basic; 如果第一个configuration失败,我想触发这个configuration(我不能完全放在单词中,但是,如果Nginx死了,我想清除Ping Apache)。 任何关于configuration的提示或build议都会很有帮助。 谢谢。
我有这个在我的apache2configuration。 ServerName example.com DocumentRoot /var/www/example.com/ Alias /m /var/www/example.com/ 奇怪的是,我可以让这个别名在所有主stream浏览器(Chrome,FF,Safari)中都能很好地播放,但是它不起作用,并且在Windows Phone 8.0中使用IEMobile发生了内部服务器错误500 这是在我的/var/apache2/log/access.log,并没有什么可疑的出现在error.log。 “GET / m / HTTP / 1.1”500 1350“ – ”“Mozilla / 5.0(兼容; MSIE 10.0; Windows Phone 8.0; Trident / 6.0; IEMobile / 10.0; ARM; Touch; NOKIA; Lumia 820)“ 而下面我使用Chrome移动访问完全相同的url。 192.168.10.254 – [17 / Jul / 2014:23:23:10 +0800]“GET / m / HTTP / 1.1”200 […]