Tips and tricks
Tired of using MAMP ?
You should already have Apache installed on Ubuntu
Install Apaache2
sudo apt update && sudo apt install apache2
restart:
systemctl reload apache2
check config:
apachectl configtest
in /etc/apache2/apache2.conf , set your username – also can be done in ( /etc/apache2/envvars )
# These need to be set in /etc/apache2/envvars User raduh Group root ServerName 127.0.0.1
you can create a new config virtual host
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/devsite.conf
in that file enter
<virtualhost *:80=""> ServerAdmin razorflashmedia@gmail.com ServerName devsite DocumentRoot "/home/raduh/Dropbox/hosts/devsite" Protocols h2 h2c http/1.1 <ifmodule xsendfile_module=""> XSendFilePath "/home/raduh/Dropbox/hosts/devsite" ServerAlias devsite.* <ifmodule wsgi_module=""> WSGIDaemonProcess devsite processes=2 threads=15 WSGIProcessGroup devsite WSGIScriptAlias /devsiteWsgiApp "/home/raduh/Dropbox/hosts/devsite/wsgiapp.py" </virtualhost>
then you can do
$/opt/homebrew/opt/httpd/bin/httpd -V Server version: Apache/2.4.48 (Unix) Server built: Jul 6 2021 20:11:03 Server's Module Magic Number: 20120211:105 Server loaded: APR 1.7.0, APR-UTIL 1.6.1 Compiled using: APR 1.7.0, APR-UTIL 1.6.1 ...
remember to add the entry in /etc/hosts
Access the config from /private/etc/apache2/httpd.conf — /opt/homebrew/etc/httpd/httpd.conf ( homebrew ) ->
also, remember to activate vhost_alias_module if you are going to use multiple hosts, which MAMP does use
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
start the server
/opt/homebrew/bin/httpd -k start
install php
sudo apt install php
make sure DirectoryIndex includes php
Add mysql
Normally, you can just install the native mysqld service
you will find it in system preferences > mysql
you can use a tool like MySQL Workbench to see currently running mysql
check currently running mysql instances with $ps aux | grep mysql
you can change the MySQL socket from the php.ini ( write php --ini
in Terminal to find )
; Default socket name for local MySQL connects. If empty, uses the built-in ; MySQL defaults. ; http://php.net/mysqli.default-socket mysqli.default_socket =
Add xdebug
Normally, you can just install the native mysqld service
pecl install xdebug
normally this will be added to php.ini
zend_extension="xdebug.so"
using XDebug 3 – for phpstorm, you would also need to add
xdebug.mode=debug
xdebug.remote_port=9000
xdebug.client_port=9003
xdebug.client_host=localhost