Apache - Me quiero volver chango

   
Vista:

Me quiero volver chango

Publicado por turco (7 intervenciones) el 22/05/2015 22:09:00
Tengo Debian 7 instalado, con un usuario creado llamado "programacion"

He instalado Apache2 y php5

El servidor Apache arranca y se detiene con start y stop.

Instalé phpmyadmin y funciona perfectamente cuando pongo "localhost/phpmyadmin"

Pero no logro que interprete mis códigos php

Me pueden ayudar porque ya probé con XAMPP y me pasaba lo mismo, osea, phpmyadmin y la página original de XAMP que comprueba si todo está funcionando andan correctamente, pero mis códigos php no lo hacen y con esta intalación de apache en etc/apache2 me pasa esactamente lo mismo

Les muestro la configuración real de apache2.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
*****************************************************************************************************************************
# 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 of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.
 
# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
#	/etc/apache2/
#	|-- apache2.conf
#	|	`--  ports.conf
#	|-- mods-enabled
#	|	|-- *.load
#	|	`-- *.conf
#	|-- conf.d
#	|	`-- *
# 	`-- sites-enabled
#	 	`-- *
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
#   together by including all remaining configuration files when starting up the
#   web server.
#
#   In order to avoid conflicts with backup files, the Include directive is
#   adapted to ignore files that:
#   - do not begin with a letter or number
#   - contain a character that is neither letter nor number nor _-:.
#   - contain .dpkg
#
#   Yet we strongly suggest that all configuration files either end with a
#   .conf or .load suffix in the file name. The next Debian release will
#   ignore files not ending with .conf (or .load for mods-enabled).
#
# * ports.conf is always included from the main configuration file. It is
#   supposed to determine listening ports for incoming connections, and which
#   of these ports are used for name based virtual hosts.
#
# * Configuration files in the mods-enabled/ and sites-enabled/ directories
#   contain particular configuration snippets which manage modules or virtual
#   host configurations, respectively.
#
#   They are activated by symlinking available configuration files from their
#   respective *-available/ counterparts. These should be managed by using our
#   helpers a2enmod/a2dismod, a2ensite/a2dissite. See
#   their respective man pages for detailed information.
#
# * Configuration files in the conf.d directory are either provided by other
#   packages or may be added by the local administrator. Local additions
#   should start with local- or end with .local.conf to avoid name clashes. All
#   files in conf.d are considered (excluding the exceptions noted above) by
#   the Apache 2 web server.
#
# * The binary is called apache2. Due to the use of environment variables, in
#   the default configuration, apache2 needs to be started/stopped with
#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
#   work with the default configuration.
 
 
# Global configuration
#
 
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation (available
# at <URL:http://httpd.apache.org/docs/2.2/mod/mpm_common.html#lockfile>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"
 
#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
LockFile ${APACHE_LOCK_DIR}/accept.lock
 
#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}
 
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
 
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
 
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
 
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5
 
##
## Server-Pool Size Regulation (MPM specific)
## 
 
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
 
# worker MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadLimit: ThreadsPerChild can be changed to this maximum value during a
#              graceful restart. ThreadLimit can only be changed by stopping
#              and starting Apache.
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
 
# event MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_event_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
 
# These need to be set in /etc/apache2/envvars
# User ${APACHE_RUN_USER}
# Group ${APACHE_RUN_GROUP}
User www-data
Group www-data
 
 
#
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#
 
AccessFileName .htaccess
 
#
# The following lines prevent .htaccess and .htpasswd files from being 
# viewed by Web clients. 
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy all
</Files>
 
#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value.  If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
# It is also possible to omit any default MIME type and let the
# client's browser guess an appropriate action instead. Typically the
# browser will decide based on the file's extension then. In cases
# where no good assumption can be made, letting the default MIME type
# unset is suggested  instead of forcing the browser to accept
# incorrect  metadata.
#
DefaultType None
 
 
#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off
 
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log
 
#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn
 
# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf
 
# Include list of ports to listen on and which to use for name based vhosts
Include ports.conf
 
#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# If you are behind a reverse proxy, you might want to change %h into %{X-Forwarded-For}i
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
 
# Include of directories ignores editors' and dpkg's backup files,
# see the comments above for details.
 
# Include generic snippets of statements
Include conf.d/
 
# Include the virtual host configurations:
Include sites-enabled/
*****************************************************************************************************************************
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Me quiero volver chango

Publicado por turco (7 intervenciones) el 23/05/2015 00:09:56
Ya he abierto anteriormente otro tema dentro de php, donde no podía hacer andar mis códigos con XAMPP...

Me recomendaron que instalara con apache como corresponde, desde línea de comando, sin usar XAMPP. Lo hice pero cuando alojo las páginas .php dentro de "/vas/www" no son interpretadas por Apache, y no tengo la suficiente experiencia en linux como para saber si se trata de problemas de acceso, permisos o lo que fuere. Disculpas por insistir con este tema pero llevo 15 días intentando y nada. Supongo que linux no es para mí.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Me quiero volver chango

Publicado por xve (236 intervenciones) el 23/05/2015 19:19:47
Hola Turco, esto creo que ya no es problema del servidor...

Nos puedes indicar donde guardas tus archivos .php?
Nos puedes indicar la url del navegador cuando no te funcionan tus códigos .php?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Me quiero volver chango

Publicado por turco (7 intervenciones) el 26/05/2015 13:18:55
Si xve:

Alojo las páginas en "var/www".
Dentro de www tengo instaldo "phpmyadmin", este abre correctamente, demostrando que Apache interpreta y MySql también funciona correctamente. A phpmyadmin lo abro escribiendo: "localhost/phpmyadmin"

Un ejemplo sencillo de que no me funciona es el siguiente código que guardo en "var/www":
1
2
3
4
5
6
7
8
9
10
11
12
13
<html>
    <head>
        <meta charset="UTF-16">
        <title></title>
    </head>
    <body>
        <?php
            echo "Hola ";
            print("Wenas ");
        ?>
        Mundo
    </body>
</html>
Este código me da como resultado la siguiente página:

002

Pero si en el navegador coloco "localhost/phpmyadmin" aparece la siguiente página:

001
Por lo tanto mi conclusión es la siguiente: Apache interpreta correctamente código PHP, solamente que no interpreta los que yo escribo. Si cambio de usuario a root, me ocurre esactamente lo mismo, osea tampoco interpreta mis códigos que yo escribo, pero interpreta bien PHP y MySQL.

Realmente "ME QUIERO VOLVER CHANGO"....... Esperaré unos días más y volveré a Windows si no logro solucionar esto.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Me quiero volver chango

Publicado por turco (7 intervenciones) el 26/05/2015 13:44:57
Acabo de renombrar el index.php del ejemplo anterior que no me funcionaba, y le puse como nombre index2.php

Luego lo copié dentro de la carpeta phpmyadmin pero tampoco funciona cuando coloco "localhost/phpmyadmin/index2.php"

Sin embargo los permisos están iguales, no veo ninguna diferencia entre index.php del phpmyadmin con el index2.php que yo escribí:
003

Si existe algún experto que me dé indicaciones de como brindar acceso con una máquina remota, le daría ese permiso para que vea mi sistema a ver que tengo mal configurado, pero no creo que sea ese el caso tampoco.... Esque ya no se que hacer..... No puedo formatear denuevo esta pc para volver a win.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Me quiero volver chango

Publicado por xve (236 intervenciones) el 26/05/2015 16:50:22
Hola Turco, la verdad es que es muy extraño lo que te esta pasando...

Revisa el log del Apache, ahi tienes que indicarte el problema...
/var/log/apache2/

Si nos puedes comentar que te dice...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Me quiero volver chango

Publicado por turco (7 intervenciones) el 26/05/2015 21:40:56
Estoy más cerca que nunca, ya se ha encaminado la solución del problema, pero no conozco los pormenores del tema.... Por lo tanto paso a detallar a continuación.

Tengo un usuario creado llamado "programacion" en Debian 7 y cada uno de los archivos .php creados con este usuario no se interpretan.

He cambiado una configuración de Debian que no me dejaba arrancar con root de escritorio, ahora cuando ingreso con el nombre de root en vista de escritorio GNome, conociendo el riesgo que esto implica, me pongo a crear archivos .php que guardo en "/var/www" y lo que ocurre es lo siguiente:

Creé un archivo llamado index2.php con el usuario "programación", luego creé el mismo archivo escribiendo de cero su contenido usando el usuario "root" y lo llamé index3.php

Si ingreso con el usuario "programación" puedo ejecutar index3.php, pero no index2.php

Si ingreso con el usuario "root" puedo ejecutar index3.php, pero no index2.php (tal parece que todo lo que hago con "programacion" no lo corre nisiquiera en root )

Los .php creados con el usuario "programacion" no se interpretan si ingreso con el usuario "programacion", ni tampoco se interpretan si entro con el usuario "root".

Los .php creados con el usuario "root", se interpretan perfectamente si ingreso con el usuario "root", y también anda perfecto si ingreso con el usuario "programación".

Luego de esto no se que explicación corresponda del caso, pero prefiero no ingresar como root para evitarme problemas, tampoco quisiera darle al usuario "programación" todos los privilegios del root, por el mismo problema anteriormente mencionado.

Supongo que la solución será simple, pero escapa a mis conocimiento....

Usando el comando chmod no logro que se interpreten los .php creados con "programación".

Si uso el comando "ls -l" como se ve en el post anterior, dice que index2.php y index3.php pertenecen a "root" los archivos, pero es raro que index2.php no corre usando el usuario root.... De algún modo Apache sabe que escribí index2.php con el usuario programacion y aunque luego use chmod en ese archivo para ponerle el usuario root, sigue sin funcionar....

Si ven la imagen que coloqué en el post de arriba, index2.php e index.php tienen los mismos usuarios y grupos, pero uno anda y el otro noooo.... ¿Cómo sabe Apache o mejor dicho, que mira Apache que descubre que está escrito con otro usuario? y ¿Porqué nisiquiera el mismo usuario que crea el archivo puede ejecutar código php?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Me quiero volver chango

Publicado por xve (236 intervenciones) el 27/05/2015 10:10:02
Hola Turco, entiendo que el problema es que los archivos que subes al servidor /var/www tienes como usuario y grupo al usuario "programacion"...

La solución es simple...

En el archivo /etc/apache2/envvars, cambia la linea:
1
export APACHE_RUN_USER=www-data
por
1
export APACHE_RUN_USER=programacion

Recuerda reiniciar el apache:
1
/etc/init.d/apache2 restart


Coméntanos, ok?


Si no quieres cambiar este valor, tendras que poner los archivos como el usuario www-data
1
chown www-data_www-data /var/www/ -R
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Me quiero volver chango

Publicado por turco (7 intervenciones) el 27/05/2015 21:54:09
Excelente respuesta, era ese el problema.

Qué lástima que no exista un mejor tutorial en esta página sobre Apache, los que he leído no sirven... Leí el que ocupa el primer lugar, la biblia de Apache..... habla de una versión vieja, la 1.x.x..... Y el segundo lugar dentro de los tutoriales de Apache, lo ocupa uno que parece muy bueno, pero el primer ejercicio tira mucho tipos de errores y no funciona.... Osea otra pérdida de tiempo y de lectura.

XVE........ Sabes mucho y no dudas en ayudar en ningún momento. MIL GRACIAS !!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar