Is it possible to launch a php script at apache startup?

As the title says, I want to know if it is be possible to automatically launch a PHP script when a restart of apache is done.

MORE INFO EDIT:

I will try to explain what is the purpose of this, the best I can. We are currently refactoring our application and we’ll be stuck with 2 differents configuration file system for the time being, until all of the application flows are refactored (might take more than a year). The old one is using simple flat file in the key=value format (i.e. www.conf), while the new system will use cacheable php files (i.e. www.php). We need to replicate to www.php any config changes made in www.conf.

Since Apache gets restarted whenever there is a config change in www.conf, I thought it might be a good workaround solution to launch a PHP script, that would replicate the www.conf to www.php.

Here is Solutions:

We have many solutions to this problem, But we recommend you to use the first solution because it is tested & true solution that will 100% work for you.

Solution 1

You need to modify you startup script for your apache.

Open your startup script, it should be in /etc/init.d/apache or apache2

Search for the start / restart section and add your cli call for your PHP script.

Example:

    restart)
            [..]
            php -q /tmp/myscript.php &
            ;;

Where /tmp/myscript.php is your php script that you want to launch.

The “&” at the end will start the script in the background so your startup will not wait until your php script has ended. If you want to wait until it has ended, remove the &.

You should not put such thing into your startup scripts, there might be better solutions. What are trying to achieve?

Solution 2

At the risk of offending people (like myself) who prefer neat clean solutions, is changing the Apache’s default start script an option for you? If so, that’d be the simplest solution

Note: Use and implement solution 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply