sencillo - El PHP de Phpmyadmin no se ejecuta, pero funcionan otros scripts php
como hacer un buscador sencillo usando php y mysql (3)
Antes que nada, ¿cuál es la versión de PHP?
Si funcionan otros scripts .php, excepto phpMyAdmin, es bastante seguro suponer que algo está mal con la instalación de phpMyAdmin. (ya sea con los archivos o el host virtual)
Solucionar problemas:
¿Puedes ejecutar otro script en el directorio phpMyAdmin? Pruebe con un archivo que contenga phpinfo (); Si no funciona, entonces el problema está en su configuración de Apache.
Si lo anterior es cierto, entonces el analizador no reconoce phpMyAdmin / index.php como un archivo php, por alguna razón. Intente reinstalar phpMyAdmin.
Pensamientos:
Elimine AddType application/x-httpd-php .php
. No deberías necesitarlo.
En PHP 5.4, se eliminó magic_quotes_gpc
. Si está ejecutando PHP5, elimine esa línea.
A partir de PHP 4.0.3, track_vars
siempre está activado, por lo que también debe eliminarlo.
A partir de PHP 4.2.0, register_globals
esta directiva se desactiva por defecto. En PHP5.3 register_globals
está en desuso, a partir de PHP5.4 se eliminó register_globals
. ASÍ, si ejecuta PHP> 4.2.0, elimine esa línea.
Al llamar al sitio web de phpmyadmin aparece el cuadro de diálogo "guardar archivo" para la application/x-httpd-php-
por lo que mi servidor no ejecuta el script phpmyadmin php, pero transfiere el código a mi navegador. Otros php como roundcube o ispconfig funcionan como se supone.
- Encontré un tema aquí que indicaba que habilitaba short_open_tags en php.ini pero eso no ayudaba (es decir, ya estaba habilitado por defecto).
- Además, verifiqué que tenía instalados y habilitados los módulos apache 2 php5.
- En los archivos de registro, obviamente, no se enumeran errores.
- Me pregunté si el phpmyadmin.conf incluso se considera, ya que solo un enlace simbólico apunta a / usr / share / phpmyadmin en el directorio etc / apache2 / conf.d /, pero dado que Alias / phpmyadmin funciona, este no es el problema.
- Revisé los archivos de configuración de apache2 pero no pude encontrar nada mal.
Sin embargo, me gustaría publicar algo aquí: apache2.conf
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
AccessFileName .htaccess
<Files ~ "^/.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
DefaultType None
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
Include mods-enabled/*.load
Include mods-enabled/*.conf
Include ports.conf
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 conf.d/
Include sites-enabled/
phpmyadmin.conf
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/
</IfModule>
</Directory>
<Directory /usr/share/phpmyadmin/setup>
<IfModule mod_authn_file.c>
AuthType Basic
AuthName "phpMyAdmin Setup"
AuthUserFile /etc/phpmyadmin/htpasswd.setup
</IfModule>
Require valid-user
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
Order Deny,Allow
Deny from All
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
Order Deny,Allow
Deny from All
</Directory>
Estos son los mods apache 2 habilitados:
actions alias auth_basic auth_digest authn_file authz_default authz_groupfile authz_host authz_user autoindex cgi dav dav_fs deflate dir env fcgid include mime negotiation php5 reqtimeout rewrite ruby setenvif ssl status suexec suphp
y los paquetes instalados relacionados con apache 2 o php:
ii libapache2-mod-php5 5.4.4-14 i386 server-side, HTML-embedded scripting language (Apache 2 module)
ii libapache2-mod-suphp 0.7.1-3 i386 Apache2 module to run PHP scripts with the owner permissions
ii php-auth 1.6.2-1 all PHP PEAR modules for creating an authentication system
ii php-pear 5.4.4-14 all PEAR - PHP Extension and Application Repository
ii php5 5.4.4-14 all server-side, HTML-embedded scripting language (metapackage)
ii php5-cgi 5.4.4-14 i386 server-side, HTML-embedded scripting language (CGI binary)
ii php5-cli 5.4.4-14 i386 command-line interpreter for the php5 scripting language
ii php5-common 5.4.4-14 i386 Common files for packages built from the php5 source
ii php5-curl 5.4.4-14 i386 CURL module for php5
ii php5-gd 5.4.4-14 i386 GD module for php5
ii php5-imagick 3.1.0~rc1-1+b2 i386 ImageMagick module for php5
ii php5-imap 5.4.4-14 i386 IMAP module for php5
ii php5-intl 5.4.4-14 i386 internationalisation module for php5
ii php5-mcrypt 5.4.4-14 i386 MCrypt module for php5
ii php5-mysql 5.4.4-14 i386 MySQL module for php5
ii phpmyadmin 4:3.4.11.1-2 all MySQL web administration tool
ii suphp-common 0.7.1-3 i386 Common files for mod suphp
ii apache2 2.2.22-13 i386 Apache HTTP Server metapackage
ii apache2-doc 2.2.22-13 all Apache HTTP Server documentation
ii apache2-mpm-prefork 2.2.22-13 i386 Apache HTTP Server - traditional non-threaded model
ii apache2-suexec 2.2.22-13 i386 Standard suexec program for Apache 2 mod_suexec
ii apache2-utils 2.2.22-13 i386 utility programs for webservers
ii apache2.2-bin 2.2.22-13 i386 Apache HTTP Server common binary files
ii apache2.2-common 2.2.22-13 i386 Apache HTTP Server common files
ii libapache2-mod-fcgid 1:2.3.6-1.2 i386 an alternative module compat with mod_fastcgi
ii libapache2-mod-php5 5.4.4-14 i386 server-side, HTML-embedded scripting language (Apache 2 module)
ii libapache2-mod-ruby 1.2.6-2 i386 Embedding Ruby in the Apache2 web server
ii libapache2-mod-suphp 0.7.1-3 i386 Apache2 module to run PHP scripts with the owner permissions
Me estoy quedando sin ideas aquí. Debo mencionar que erróneamente actualicé directamente de Debian 5 a Debian 7, lo que fue un gran problema y causó muchos problemas. Este problema actual es parte de esto y puede haber causas extrañas involucradas, como entradas de configuración depreciadas o lo que sea.
Tuve que agregar lo siguiente, que le dice al servidor que analice los archivos PHP dentro del directorio phpMyAdmin
<Directory /usr/share/phpMyAdmin>
Options -Indexes +IncludesNOEXEC +SymLinksIfOwnerMatch +ExecCGI
allow from all
AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch
Require all granted
AddType application/x-httpd-php .php
AddHandler fcgid-script .php
AddHandler fcgid-script .php5
FCGIWrapper /path/fcgi-bin/php5.fcgi .php
FCGIWrapper /path/fcgi-bin/php5.fcgi .php5
</Directory>
Durante la configuración de phpmyadmin, es posible que haya utilizado el método de conexión Socket Unix para la base de datos MySQL, en realidad debería usar TCP / IP. Y después de eso, seleccione el localhost y el puerto predeterminado [dejar en blanco] durante la configuración y listo. Cámbielo nuevamente escribiendo en la terminal:
sudo dpkg-reconfigure phpmyadmin