2017-04-14 8 views
0

J'ai un serveur de laboratoire et fait 27 comptes pour les étudiants à/home/info02/Impossible d'accéder au serveur à Port 8080 (Interdite) Centos 6.5 Apache 2.2.15

« info02 » est un nom et info9042 groupe est un compte dans l'exemple.

Je suis info9042 et j'ai écrit un document html simple dans "/ home/info02/info9042/public_html/index.html" mais quand je tape URL en chrome (fenêtre 10), je reçois un message ci-dessous. enter image description here

Voici mon fichier "/etc/httpd/conf/httpd.conf". Que dois-je changer de code dans le fichier conf?

# DocumentRoot: The directory out of which you will serve your 
# documents. By default, all requests are taken from this directory, but 
# symbolic links and aliases may be used to point to other locations. 
# 
DocumentRoot "/var/www/html" 
#DocumentRoot "/home/nlp" 
# 
# Each directory to which Apache has access can be configured with respect 
# to which services and features are allowed and/or disabled in that 
# directory (and its subdirectories). 
# 
# First, we configure the "default" to be a very restrictive set of 
# features. 
# 
<Directory /> 
    Options FollowSymLinks 
    AllowOverride None 

</Directory> 

# 
# Note that from this point forward you must specifically allow 
# particular features to be enabled - so if something's not working as 
# you might expect, make sure that you have specifically enabled it 
# below. 
# 

# 
# This should be changed to whatever you set DocumentRoot to. 
# 
<Directory "/var/www/html"> 

# 
# Possible values for the Options directive are "None", "All", 
# or any combination of: 
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews 
# 
# Note that "MultiViews" must be named *explicitly* --- "Options All" 
# doesn't give it to you. 
# 
# The Options directive is both complicated and important. Please see 
# http://httpd.apache.org/docs/2.2/mod/core.html#options 
# for more information. 
# 
    Options Indexes FollowSymLinks 

# 
# AllowOverride controls what directives may be placed in .htaccess files. 
# It can be "All", "None", or any combination of the keywords: 
## Options FileInfo AuthConfig Limit 
    AllowOverride None 

# 
# Controls who can get stuff from this server. 
# 
    Order allow,deny 
    Allow from all 

</Directory> 

# 
# UserDir: The name of the directory that is appended onto a user's home 
# directory if a ~user request is received. 
# 
# The path to the end user account 'public_html' directory must be 
# accessible to the webserver userid. This usually means that ~userid 
# must have permissions of 711, ~userid/public_html must have permissions 
# of 755, and documents contained therein must be world-readable. 
# Otherwise, the client will only receive a "403 Forbidden" message. 
# 
# See also: http://httpd.apache.org/docs/misc/FAQ.html#forbidden 
# 
<IfModule mod_userdir.c> 
    # 
    # UserDir is disabled by default since it can confirm the presence 
    # of a username on the system (depending on home directory 
    # permissions). 
    # 
    #UserDir disabled root 

    # 
    # To enable requests to /~user/ to serve the user's public_html 
    # directory, remove the "UserDir disabled" line above, and uncomment 
    # the following line instead: 
    # 
    UserDir public_html 
</IfModule> 

# 
# Control access to UserDir directories. The following is an example 
# for a site where these directories are restricted to read-only. 
# 
<Directory /home/*/*/public_html> 
    AllowOverride FileInfo AuthConfig Limit 
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec 
    <Limit GET POST OPTIONS> 
     Order allow,deny 
     Allow from all 
    </Limit> 
    <LimitExcept GET POST OPTIONS> 
     Order deny,allow 
     Deny from all 
    </LimitExcept> 
</Directory> 

Répondre

0

OK, je vois plusieurs problèmes ici qui pourraient être la cause de votre problème (s), moreso que juste le fichier de configuration de httpd. Donc, fondamentalement, votre fichier index.html est une page web (je suppose que vous voulez donner accès aux étudiants ou quelqu'un d'autre). Un des problèmes possibles avec ce que vous faites est, vous avez le fichier html (site web) situé dans un dossier que vous avez fait dans le répertoire/home /. Lorsque vous créez des sites Web, en particulier dans Apache, ils doivent passer sous le répertoire "/var/www/", car Apache définit par défaut les paramètres de sécurité et de serveur pour utiliser ce répertoire comme un répertoire de serveur Web. Donc, un début pour résoudre votre problème serait de déplacer vos fichiers/dossiers dans le dossier/var/www (ou le dossier/var/www/html). Cela peut être personnalisé/configuré en conséquence. Un autre problème que vous avez est que, vous avez deux initiatives de répertoire dans votre fichier httpd (vous devriez en avoir un je crois), et votre document racine pointe vers/var/www/html. Un troisième problème qui pourrait causer un conflit; En général, Apache/Virtual Host est configuré pour charger des pages Web sur le port 80, auquel vous essayez d'accéder sur le port 8080 (localhost). Vous pouvez ne jamais l'avoir spécifié pour charger sur localhost, et vous ne pouvez pas avoir les ports ouverts non plus. Votre fichier httpd (je n'ai pas beaucoup travaillé avec centos deux) ne semble pas avoir les balises entourant l'hôte virtuel que je connais, mais généralement vous créez un conteneur d'hôte virtuel qui spécifie un port pour charger ces pages Web.

Je ne sais pas, j'espère que cela vous oriente dans la bonne direction. Je commencerais certainement par mettre ces fichiers dans le dossier/var/www/html si vous avez l'intention de l'utiliser comme serveur web/page web, ce n'est pas une bonne pratique (pas sûre) d'utiliser le dossier home pour de telles applications. Changez le fichier de configuration pour qu'il pointe vers ce répertoire. Si vous avez besoin d'autoriser les élèves à modifier/exécuter des fichiers, vous devrez leur attribuer des autorisations de groupe d'utilisateurs pour travailler avec les fichiers du dossier/var/ww/html.