Ir al contenido principal

Apache, actualizando a OS X 10.9 Maverick

Algunos pequeños cambios respecto a Apache notamos cuando actualizas el sistema a OS X Maverick. Primero, ya no tenemos la opción de Web Sharing en la interfaz de configuración, así que hay que meterle mano al Terminal.

Para arrancar Apache:
sudo apachectl start
para detenerlo:
sudo apachectl stop
para reiniciar:
sudo apachectl restart 
Una vez arrancado podemos abrir un explorador con http://127.0.0.1 y veremos que el servicio está corriendo, pero tendremos otra sorpresa. El servidor tiene el documento raíz en /Library/WebServer/Documents y posiblemente nosotros lo teníamos antes en ~/Sites así que tendremos que configurar nuestro fichero httpd.conf para apuntar al directorio que contendrá nuestros proyectos:
sudo nano /private/etc/apache2/httpd.conf
 Ya que estamos editando el fichero de configuración, es recomendable además, activar PHP descomentando la línea del módulo PHP5_module.
Una vez ajustado a tus necesidades, recuerda reiniciar el servicio para que los cambios se hagan efectivo.

Cuento corto:


Ahora que ya entendimos todo, hagamos las cosas más fáciles. Si actualizas de una versión anterior de OS X verás que dentro de /private/etc/apache2/ aparece httpd.conf.pre-update que es una copia del archivo de configuración anterior que teníamos antes de actualizar el sistema. Por tanto, con sólo copiar este fichero, tendremos la configuración original que teníamos antes:
sudo cp /private/etc/apache2/httpd.conf.pre-update /private/etc/apache2/httpd.conf
Reiniciamos una vez más apache y listo.
OJO!: Si tenemos una instalación de Maverick limpia, es decir, que no estamos actualizando de una versión anterior, este fichero no existirá!

Comentarios

Entradas populares de este blog

Actualizar Ruby con RVM en OS X 10.9 Maverick

Cocoapods me pide una versión de Ruby mayor que 2.0, pero Maverick viene por defecto con 1.9.3 así que tiré de rvm pensando que serían un par de líneas pero no, he pasado un buen rato en el proceso. Hagamos el cuento corto:

$rvm list known

y no aparece ninguna versión 2 o superior, así que:
$rvm get latest

y ahora con:
$rvm list known

tenemos:
# MRI Rubies [ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p643] [ruby-]2.1.4 [ruby-]2.1[.5] [ruby-]2.2[.1] [ruby-]2.2-head
ruby-head
ahora si,
$rvm install 2.2.1
pero
Error running 'requirements_osx_brew_libs_install automake libtool libksba', showing last 15 lines of /Users/hedmon/.rvm/log/1428514809_ruby-2.2.1/package_install_automake_libtool_libksba.log
Las dependencias estaban instaladas pero no linkeadas, así que vamos a resolverlo con Homebrew.
$brew update $brew upgrade $brew link automake libtool libksba
ahora vuelvo a intentar $rvm install 2.2.1

Entonces …

Drupal Commerce - producto con varios precios

Montando un marketplace con Drupal Commerce, apareció un caso de uso donde el cliente quería agregar a cada producto un precio de envío diferente. Por tanto no valía una Flate Rate u alguna solución clásica de 'shipping', así que pensé que Rules y encontré esta simple solución de Josh Miller:
La idea es agregar un campo 'envío' tipo 'price' al tipo de producto en cuestión, y luego con rules, sumar al precio del producto, el precio del envío.
Crear una nueva regla de cálculo de precio. Ir a admin/commerce/config/product-pricing/rules/add y darle un nombreAgregamos una primera condición "Entity has field" a la entidad "commerce-line-item" y seleccione el campo "commerce_product". Con este paso se carga el producto para la siguiente inspección.Segunda condición, cargamos el campo con el precio: "Entity has field" a la entidad "commerce-line-item:commerce-product" y seleccionamos el campo creado previamente en el ti…

Django I - Crear nuevo proyecto

Hacemos un resumen del tutorial oficial de Django recogiendo los principales pasos para comenzar con el framework. Para más detalle visitar la documentación oficial.

Asumimos que ya Django está instalado, si no, hay bastante documentación online de como hacerlo en los distintos sistemas operativos.

Versión: Si el framework está instalado, podemos ver la versión con:
$ python -c "import django; print(django.get_version())" de no estar instalado veremos un error "No module named django".


Comenzar un nuevo proyecto: Desde la consola situarse en el directorio donde queremos almacenar el código de nuestro proyecto y ejecutar:
django-admin.py startproject mysite El nuevo proyecto creado tendrá una estructura:
mysite/ manage.py mysite/ __init__.py settings.py urls.py wsgi.py dónde:
mysite/ La carpeta raíz del proyecto tendrá el mismo nombre que utilizamos a la hora de crearlo pero se puede cambiar, no afecta en nada el funcionamiento, …