php - las - short_open_tag
¿Cómo habilitar las etiquetas cortas de PHP? (18)
Configure asp_tags = On
y short_open_tag = On
en los archivos /apache/Apache2.2.21/bin/php.ini
y /bin/php/php5.3.8/php.ini
y luego reinicie el servidor de apache.
Tengo una aplicación web en un servidor Linux que comienza con <?
Necesitaba copiar esta aplicación en un entorno de Windows y todo funciona bien, excepto que una declaración SQL se procesa de manera diferente. No sé si esto tiene que ver con el script que comienza con <?php
lugar de <?
Porque no sé de dónde habilitar <?
desde el PHP.ini
así que lo cambié a <?php
Sé que estas 2 declaraciones se supone que significan lo mismo pero necesito probarlo con <?
con el fin de garantizar que la aplicación es exactamente la misma. De esta manera puedo eliminar otra posibilidad.
Gracias
En CentOS 6 (también probado en Centos 7) no puedes configurar short_open_tag en /etc/php.ini para php-fpm. Tendrás error:
ERROR: [/etc/php.ini:159] unknown entry ''short_open_tag''
ERROR: Unable to include /etc/php.ini from /etc/php-fpm.conf at line 159
ERROR: failed to load configuration file ''/etc/php-fpm.conf''
ERROR: FPM initialization failed
Debe editar la configuración de su sitio, que puede encontrar en /etc/php-fpm.d/www.conf Y escribir al final del archivo:
php_value[short_open_tag] = On
Esto se puede hacer habilitando short_open_tag en php.ini :
short_open_tag = on
Si no tiene acceso a php.ini, puede intentar habilitarlos a través del archivo .htaccess , pero es posible que la compañía de alojamiento lo haya desactivado si está en un alojamiento compartido:
php_value short_open_tag 1
Para las personas que piensan que short_open_tags es una mala práctica a partir de php 5.4, la etiqueta corta <?= ... ?>
Se admite en todas partes , independientemente de la configuración, por lo que no hay razón para no usarlas si puede controlar la configuración en el servidor. También se dice en este enlace: short_open_tag
Esto se puede hacer habilitando short_open_tag en php.ini:
1.Para localizar el archivo php.ini, en la línea de comentario ejecutar
php --ini
obtendrá algo como esto,
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/curl.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/gd.ini,
/etc/php.d/json.ini,
/etc/php.d/mcrypt.ini,
/etc/php.d/mysql.ini,
/etc/php.d/mysqli.ini,
/etc/php.d/pdo.ini,
/etc/php.d/pdo_mysql.ini,
/etc/php.d/pdo_sqlite.ini,
/etc/php.d/phar.ini,
/etc/php.d/sqlite3.ini,
/etc/php.d/zip.ini
Vea la segunda línea de la salida del comentario. El archivo estará en la ruta mencionada.
2.Abra el archivo php.ini y busque short_open_tag
. Por defecto está off
cambiarlo a off
.
3. Reinicie el servidor, ejecute este comentario
service httpd restart
Gracias
Para configurar etiquetas cortas para que se abran desde un script de instalación de Vagrant en Ubuntu:
sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php5/apache2/php.ini
Para habilitar short_open_tag para un dominio particular con php-fpm, debe editar:
/etc/php5/fpm/pool.d/xxxxxxxxxx.conf
Donde xxxxx es el número de socket del dominio.
Y agrega: php_value [short_open_tag] = On
Para los usuarios de Wamp Server, es más fácil: puede habilitar esa configuración simplemente haciendo clic (izquierda) en el icono de WampServer, elija PHP -> Configuración de PHP -> Etiqueta de apertura corta. Espere un segundo, luego WampServer reiniciará automáticamente su PHP y también su servicio web.
originalmente de: http://osticket.com/forums/showthread.php?t=3149
Puedo ver que todas las respuestas anteriores son solo parcialmente correctas. En realidad, todas las aplicaciones PHP del siglo XXI tendrán FastCGI Process Manager (php-fpm), así que una vez que haya agregado php-info () en su script test.php y haya comprobado la ruta correcta para php.ini
Go to php.ini and set short_open_tag = On
IMPORTANTE: entonces debes reiniciar el proceso php-fpm para que esto funcione.
sudo service php-fpm restart
y finalmente reinicie su servidor nginx / http
sudo service nginx restart
Si edita su archivo php.ini, recuerde reiniciar su servicio (apache2, etc.) para que las modificaciones a php.ini surtan efecto.
Si está utilizando Ubuntu
con Apache+php5
, entonces en las versiones actuales hay 2 lugares donde necesita cambiar a short_open_tag = On
-
/etc/php5/apache2/php.ini
- esto es para las páginas cargadas a través de su servidor web (Apache) -
/etc/php5/cli/php.ini
: esta configuración se usa cuando se inician los archivos php desde la línea de comandos, como:php yourscript.php
, que sephp yourscript.php
archivos php ejecutados manualmente o por computadora directamente en el servidor.
Si está utilizando xampp en Windows, por favor haga lo siguiente
- Abra el panel de control de XAMPP.
- Haga clic en el botón CONFIG.
- Ir a la opción PHP (php.ini).
Encuentra short_open_tag usando la utilidad ctrl + f
Lo encontrarás ;short_open_tag
por favor quite el punto y coma (;) de la línea.
y manténgalo como short_open_tag = on
Finalmente, reinicie su servidor Apache.
Tan simple, como eso, sigue los siguientes pasos:
- ir al archivo php.ini
- busca, ''short_open_tag'' y configúralo en on,
- reiniciar el servidor
entonces, short_open_tag = On
si usa xampp, notará que el archivo php.ini ha mencionado dos veces short_open_tag. Habilita el segundo para short_open_tag = On. El primero está comentado y es posible que se sienta tentado a descomentarlo y editarlo, pero está superado por un segundo short_open_tag
tienes que activar short_open_tags.
short_open_tag = On
short_open_tag = On
en php.ini
y reinicie su servidor apache.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
;short_open_tag=Off <--Comment this out
; XAMPP for Linux is currently old fashioned
short_open_tag = On <--Uncomment this
sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php/7.2/apache2/php.ini
Eso funciona en php7.2 en ubuntu 16, la misma respuesta que Bradley Flood anterior, aunque el directorio en el que está almacenado el archivo de configuración ha cambiado.
También puede cambiar la versión en la cadena php para que coincida con la versión instalada actualmente.