我如何设置我的新的Web服务器使用Apache?

我正在做一个私人的networking服务器,但我无法得到它的工作。

我正在运行CentOS。
我安装了Apache并validation它正在运行。
我根据在线教程(主要是这个 )设置了httpd.conf,我打电话给我的ISP,他们向我保证,他们不会阻塞端口80.(我有DSL)我configuration我的路由器转发端口80和443到我的服务器。 我从godaddy.com购买了一个URL,并将其设置为转发到我的路由器的外部IP(我只是通过访问http://www.whatismyip.com/ )

在我的路由器中转发端口22是我需要做的,以便能够通过我的URL ssh到我的服务器。 从我读的东西,我应该都成立了,当我访问我的网页(这将是伟大的,这意味着我的服务器响应)应该是404或403错误。

但我的浏览器告诉我,它连接炮。 就好像我的服务器不存在一样。

显然,我错过了一些东西。 除了我的ISP或我的路由器之外是否有可能阻塞端口80的东西? 有没有更好的资源来了解configurationApache? 有人可以帮我弄清楚是怎么回事?

(注意:我没有一个静态的IP地址,但是,我知道我的IP在一段时间没有改变,我正在监视它,所以我可以知道它是否改变。我可以build立一个不稳定的网站,直到我的ISP决定给我一个新的IP,请纠正我,如果我错了。

我有一段说:

<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> 

其次是一个说:

 <Directory /var/www/html> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> 

其中“/ var / www / html”是我的DocumentRoot

那么,既然你已经启动了服务,那么你可能需要检查一些事情,因为你已经运行了centos(我假定了5个系列)。

确保iptables允许httpstream量。 如果没有,运行:

 iptables -I INPUT 5 -m tcp -p tcp --dport 80 -j ACCEPT 

如果您运行了SELinux,则需要启用http访问。 您可以通过运行validation:

 [root@centos ssl]# getsebool -a | grep httpd allow_httpd_anon_write --> on allow_httpd_bugzilla_script_anon_write --> on allow_httpd_cvs_script_anon_write --> on allow_httpd_mod_auth_pam --> on allow_httpd_nagios_script_anon_write --> on allow_httpd_prewikka_script_anon_write --> on allow_httpd_squid_script_anon_write --> on allow_httpd_sys_script_anon_write --> on httpd_builtin_scripting --> on httpd_can_network_connect --> on httpd_can_network_connect_db --> on httpd_can_network_relay --> on httpd_can_sendmail --> on httpd_disable_trans --> on httpd_enable_cgi --> on httpd_enable_ftp_server --> on httpd_enable_homedirs --> on httpd_read_user_content --> on httpd_rotatelogs_disable_trans --> on httpd_setrlimit --> on httpd_ssi_exec --> on httpd_suexec_disable_trans --> on httpd_tty_comm --> on httpd_unified --> on httpd_use_cifs --> on httpd_use_nfs --> on 

否则,tail / var / log / httpd / error_log,看看它告诉你什么。

我不相信阿帕奇有一个默认的规则,不允许除localhost之外的所有内容,但是这是我的猜测,你正在经历什么。

在httpd.conf中有一个设置Apache的指令,所以没有人可以访问它,它看起来像这样:

 <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> 

这是正常的,你不需要编辑它。 只要确保在你的httpd.conf文件中有另一个指令覆盖那个指令并允许一些访问,例如:

 <Directory "R:/Apache2.2/htdocs/wordpress"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from 127.1 Allow from 10 Allow from 208.32 #Allow from all </Directory>