Lightweight, native Mac menu bar app that helps you manage multiple PHP installations, locate config files and more. Also interacts with Laravel Valet.
MIT License
Published by nicoverbruggen almost 2 years ago
PHP Monitor 5.6.6 is a maintenance release with an updated disclaimer for secured proxies, and it has been fully tested with the stable version of PHP 8.2, which is now generally available via Homebrew.
php
formula.brew install [email protected]
after running brew upgrade
.https://
prefix instead of http://
) will now include a small warning about manually needing to set proxy_ssl_verify
to off
in the domain's nginx configuration file.The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you are having issues after upgrading, you may want to run brew doctor
and valet install
.
(If you did not use Homebrew to install the app, you can also download a zip below.)
Published by nicoverbruggen almost 2 years ago
PHP Monitor 5.6.5 is a maintenance release with an important bugfix, and it also adds official support for the nginx-full
formula.
nginx-full
formula (#211).The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you are having issues after upgrading, you may want to run brew doctor
.
(If you did not use Homebrew to install the app, you can also download a zip below.)
Published by nicoverbruggen almost 2 years ago
PHP Monitor 5.6.4 is a maintenance release with bugfixes and support for PHP 8.2. This build even introduces support for PHP 8.3 dev builds, as is usually the case when a new stable PHP version is around the corner.
If you are upgrading to macOS Ventura or have upgraded, make sure your installation of Homebrew is up-to-date, since new OS releases often mean that a major update for Homebrew is usually available. If you are having issues after upgrading, you may want to run brew doctor
.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
Valet won't play nice with PHP 8.3 pre-releases yet. You will need to tweak a source file in your local Valet installation (in ~/.composer/vendor/laravel/valet/cli/Valet/Brew.php
).
If [email protected]
is not listed in the array, add it:
const SUPPORTED_PHP_VERSIONS = [
'php',
+ '[email protected]',
'[email protected]',
'[email protected]',
'[email protected]',
Run valet install
to update Valet's configuration and then it should work. I consider this addition to be preliminary support for this pre-release version, so if this doesn't work or breaks, let me know!
Published by nicoverbruggen almost 2 years ago
PHP Monitor 5.6.3 is a maintenance release with official support for macOS Ventura.
If you are upgrading to macOS Ventura or have upgraded, make sure your installation of Homebrew is up-to-date, since new OS releases often mean that a major update for Homebrew is usually available. If you are having issues after upgrading, you may want to run brew doctor
.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
brew info
when querying a tap or package that isn't installed.brew tap homebrew/services
when bumping into issue #208.Published by nicoverbruggen about 2 years ago
PHP Monitor 5.6.2 is a maintenance release that fixes a few minor bugs.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
valet secure
command works (#197).Published by nicoverbruggen about 2 years ago
PHP Monitor 5.6.1 is a minor update that fixes a few bugs that may have caused issues for some users when starting the app. As usual, all users are recommended to upgrade.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor.
If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
scanApps
property is missing in the custom configuration file, the config file will now still be read correctly.Published by nicoverbruggen about 2 years ago
PHP Monitor 5.6 is a quality of life release and improves the ease of use of the site isolation feature, and introduces the ability of users to customize what appears in the main menu when you click on the version number (or truck icon).
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
In Preferences there's a new Visibility tab. Here you can hide specific features from PHP Monitor's main menu: only keep what you really need!
The way the contextual menu works in the domain list has been modified. Instead of having to left-click on a domain before right-clicking, you can now instantly right-click on the item in question, and the domain will immediately be selected.
Upon right-clicking, if a site is already isolated, you will be able to instantly choose a different version of PHP to switch to for that site. (Think of this as a switcher... this means you won't have to remove site isolation and then manually reisolate the site again with your preferred PHP version. Thankfully!)
Published by nicoverbruggen about 2 years ago
This release fixes an issue that could occur if your username and your home directory have different names. This could have caused various issues in versions <5.5, but since the latest minor update the app wouldn't start on systems with this issue. This has now been resolved.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
whoami
is no longer used, instead id -un
is used to determine the active user's username. (#189)Published by nicoverbruggen about 2 years ago
This release adds a few new features (PHP Doctor, a better onboarding experience and custom environment variable support) to PHP Monitor. This release also includes a various bugfixes that should improve the experience for new users or users who have difficulties with their Valet setup. All users are recommended to upgrade.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
valet install
(#182).Published by nicoverbruggen over 2 years ago
This is a bugfix release that fixes an issue with PHP Monitor 5.4. All users are recommended to upgrade.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
Published by nicoverbruggen over 2 years ago
This release adds a variety of new features, including support for custom services, presets and various other improvements. For the full list of changes, please see What's New below.
If you want to learn more and see some screenshots, please see the blog post on my website.
The configuration file has been moved to ~/.config/phpmon/config.json
. If you had a custom configuration file before, it will be automatically copied to the new location.
Various views throughout the app have been rewritten and now use SwiftUI. If something looks off, please let me know. If you are on macOS 11, please get in touch and let me know if you encounter issues with the appearance of the app.
Services can now be started and stopped by pressing on the status icon (cross or checkmark) in the dropdown when you click on PHP Monitor's icon.
The Preferences window was getting a bit big, so it now has multiple tabs. A new section for granular notification settings has also been added.
You can now toggle Xdebug modes via Manage Xdebug. You can also disable all modes at once by choosing Disable All, which disables all modes and sets the value of xdebug.mode
to off
. Xdebug must be installed for this option to appear.
You can now add Configuration Presets to PHP Monitor. You must set these up in a JSON file, located in ~/.config/phpmon/config.json
. You must have set up at least one valid preset for this item to appear in PHP Monitor. Here's a template you can use to get started:
{
"scan_apps": [],
"services": [],
"presets": [
{
"name": "Legacy Project",
"php": "8.0",
"extensions": {
"xdebug": false
},
"configuration": {
"memory_limit": "128M",
"upload_max_filesize": "128M",
"post_max_size": "128M"
}
},
{
"name": "Modern Project",
"php": "8.1",
"extensions": {
"xdebug": true
},
"configuration": {
"xdebug.mode": "coverage",
"memory_limit": "512M",
"upload_max_filesize": "512M",
"post_max_size": "512M"
}
}
]
}
services
in the configuration file for Homebrew services that run as your own user (not root). You can find out which services are available by running brew services list
. While you can add the Valet services again (php
, dnsmasq
, nginx
), this is not recommended and will break the app. For example, you can do this:{
"scan_apps": [],
"services": ["mailhog", "mysql"],
"presets": []
}
/private/etc/sudoers.d/brew
or /private/etc/sudoers.d/brew
files, the app will tell you to run valet secure
. Instead, you should fix permissions for these files./usr/local/bin
directory is not writeable, the app will silently fail to write the PHP version helpers without notifying the user.root
are currently not supported. Custom services currently always start as owned by the current user (not root).Published by nicoverbruggen over 2 years ago
This is a bugfix release that fixes an issue with PHP Monitor 5.3. All users are recommended to upgrade.
The recommended way of upgrading is running brew update-reset && brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
valet install
after upgrading a PHP version.Published by nicoverbruggen over 2 years ago
This is a bugfix release that fixes an issue with PHP Monitor 5.3. All users are recommended to upgrade.
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
Published by nicoverbruggen over 2 years ago
This release adds support for creating and managing Valet proxies, which will now be displayed in the list of domains. Also new: starting with this release, the app will automatically notify you about updates. (You can disable this automatic check if you prefer.)
/private/etc/sudoers.d/brew
or /private/etc/sudoers.d/brew
files, the app will tell you to run valet secure
. Instead, you should fix permissions for these files./usr/local/bin
directory is not writeable, the app will silently fail to write the PHP version helpers without notifying the user.Published by nicoverbruggen over 2 years ago
This is a bugfix release that fixes various minor issues with PHP Monitor 5.2. Due to the nature of the fixes included in this update, upgrading to this release is recommended for all users of PHP Monitor.
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
Published by nicoverbruggen over 2 years ago
This is a bugfix release that fixes an issue with the isolation command (#158).
Published by nicoverbruggen over 2 years ago
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
If you do upgrade to Valet 3, you will lose support for PHP 5.6, but the site isolation feature will be enabled in PHP Monitor. For more information, I recommend reading my blog post on this release.
config.json
, it will now be displayed in the site list. Should you reload the site list, the config.json
file is now also reloaded, which means that PHP Monitor will pick up any new default site, directories and TLD.pm80
will activate PHP 8.0, and pm74
will activate PHP 7.4. (PHP Monitor only enables which versions of PHP you have installed locally.)config.json
file (containing your Laravel Valet config) is invalid, you will be prompted when PHP Monitor launches.www.conf
pool configuration file would not be renamed, which is the default behaviour of Laravel Valet. PHP Monitor now disables those files whenever the version switch happens, because they could lead to failing services commands (#152). This brings the behaviour of PHP Monitor in line with Valet's own switcher.Published by nicoverbruggen over 2 years ago
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
valet trust
before evaluating whether the services JSON can be retrieved via Homebrew. The incorrect order of startup checks caused some confusion for new users.Published by nicoverbruggen over 2 years ago
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
brew upgrade
or brew cleanup
without permission issues. This will require administrative privileges, because PHP Monitor will restore your ownership of the files and folders that are currently owned by the root
user, due to Valet services running as root..valetphprc
files: If you include a .valetphprc
file in your folder, PHP Monitor will attempt to scan that file for a PHP version number (e.g. [email protected]
) and will apply that as the constraint for that domain./usr/local/bin/brew
is used. If you're running natively on M1, /opt/homebrew/bin/brew
is used instead. This allows people who are using M1 Macs, but still wish to use their Rosetta version of Homebrew to run the app under Rosetta and have it work exactly as it would on an Intel Mac.composer
binary is located in /opt/homebrew/bin
.Published by nicoverbruggen over 2 years ago
The recommended way of upgrading is running brew upgrade phpmon
after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip
).
Huge thanks to the various reporters who helped me track down these bugs!
sudoers
file does not contain the correct info but Valet is present, the app would crash running valet --version
prior to confirming valet
can run without admin permissions. This no longer happens.composer.json
.