diff --git a/Vagrantfile b/Vagrantfile index c88592e..3cef944 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -30,7 +30,7 @@ server_timezone = "UTC" # Database Configuration mysql_root_password = "root" # We'll assume user "root" mysql_version = "5.5" # Options: 5.5 | 5.6 -mysql_enable_remote = "false" # remote access enabled when true +mysql_enable_remote = "true" # remote access enabled when true pgsql_root_password = "root" # We'll assume user "root" mongo_enable_remote = "false" # remote access enabled when true @@ -59,7 +59,7 @@ composer_packages = [ # List any global Composer packages that you wa # Default web server document root # Symfony's public directory is assumed "web" # Laravel's public directory is assumed "public" -public_folder = "/vagrant" +public_folder = "/vagrant/public" laravel_root_folder = "/vagrant/laravel" # Where to install Laravel. Will `composer install` if a composer.json file exists laravel_version = "latest-stable" # If you need a specific version of Laravel, set it here @@ -105,7 +105,7 @@ Vagrant.configure("2") do |config| config.vm.synced_folder ".", "/vagrant", id: "core", :nfs => true, - :mount_options => ['nolock,vers=3,udp,noatime,actimeo=1'] + :mount_options => ['nolock,vers=3,noatime,actimeo=1'] # If using VirtualBox config.vm.provider :virtualbox do |vb| @@ -192,10 +192,10 @@ Vagrant.configure("2") do |config| ########## # Provision Apache Base - # config.vm.provision "shell", path: "#{github_url}/scripts/apache.sh", args: [server_ip, public_folder, hostname, github_url] + config.vm.provision "shell", path: "#{github_url}/scripts/apache.sh", args: [server_ip, public_folder, hostname, github_url] # Provision Nginx Base - config.vm.provision "shell", path: "#{github_url}/scripts/nginx.sh", args: [server_ip, public_folder, hostname, github_url] + # config.vm.provision "shell", path: "#{github_url}/scripts/nginx.sh", args: [server_ip, public_folder, hostname, github_url] #### diff --git a/composer.json b/flarum/composer.json similarity index 100% rename from composer.json rename to flarum/composer.json diff --git a/extensions/.gitignore b/flarum/extensions/.gitignore similarity index 100% rename from extensions/.gitignore rename to flarum/extensions/.gitignore diff --git a/flarum b/flarum/flarum similarity index 100% rename from flarum rename to flarum/flarum diff --git a/storage/cache/.gitignore b/flarum/storage/cache/.gitignore similarity index 100% rename from storage/cache/.gitignore rename to flarum/storage/cache/.gitignore diff --git a/storage/formatter/.gitignore b/flarum/storage/formatter/.gitignore similarity index 100% rename from storage/formatter/.gitignore rename to flarum/storage/formatter/.gitignore diff --git a/storage/less/.gitignore b/flarum/storage/less/.gitignore similarity index 100% rename from storage/less/.gitignore rename to flarum/storage/less/.gitignore diff --git a/storage/logs/.gitignore b/flarum/storage/logs/.gitignore similarity index 100% rename from storage/logs/.gitignore rename to flarum/storage/logs/.gitignore diff --git a/storage/tmp/.gitignore b/flarum/storage/tmp/.gitignore similarity index 100% rename from storage/tmp/.gitignore rename to flarum/storage/tmp/.gitignore diff --git a/storage/views/.gitignore b/flarum/storage/views/.gitignore similarity index 100% rename from storage/views/.gitignore rename to flarum/storage/views/.gitignore diff --git a/public/.htaccess b/public/.htaccess new file mode 100644 index 0000000..b0f5e4c --- /dev/null +++ b/public/.htaccess @@ -0,0 +1,81 @@ +# Allow access if Flarum is installed in a subdirectory, +# but another .htaccess in a higher directory denies access. + + + Require all granted + + + Order Allow,Deny + Allow from all + + + + RewriteEngine on + + RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + + RewriteRule ^vendor/(.*)?$ / [F,L] + RewriteRule ^storage/(.*)?$ / [F,L] + RewriteRule ^config.php$ / [F,L] + + RewriteRule ^api(.*)$ api.php [QSA,L] + RewriteRule ^admin(.*)$ admin.php [QSA,L] + + RewriteCond %{REQUEST_FILENAME} !-f + RewriteCond %{REQUEST_FILENAME} !-d + RewriteRule !^assets index.php [QSA,L] + + # MultiViews can mess up our rewriting scheme + Options -MultiViews + + # Autoindex will list all assets files which is not so good + Options -Indexes + + + + # Compress all output labeled with one of the following MIME-types + + AddOutputFilterByType DEFLATE application/atom+xml \ + application/javascript \ + application/json \ + application/vnd.ms-fontobject \ + application/x-font-ttf \ + application/x-web-app-manifest+json \ + application/xhtml+xml \ + application/xml \ + font/opentype \ + image/svg+xml \ + image/x-icon \ + text/css \ + text/html \ + text/plain \ + text/xml + + + +# Configure cache expiry for different file types + + ExpiresActive on + ExpiresDefault "access plus 1 second" + + ExpiresByType text/css "access plus 1 year" + ExpiresByType application/json "access plus 0 seconds" + ExpiresByType application/xml "access plus 0 seconds" + ExpiresByType text/xml "access plus 0 seconds" + ExpiresByType image/x-icon "access plus 1 week" + ExpiresByType text/html "access plus 0 seconds" + ExpiresByType application/javascript "access plus 1 year" + ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" + ExpiresByType text/cache-manifest "access plus 0 seconds" + ExpiresByType image/gif "access plus 1 month" + ExpiresByType image/jpeg "access plus 1 month" + ExpiresByType image/png "access plus 1 month" + ExpiresByType application/atom+xml "access plus 1 hour" + ExpiresByType application/rss+xml "access plus 1 hour" + ExpiresByType application/font-woff2 "access plus 1 month" + ExpiresByType application/font-woff "access plus 1 month" + ExpiresByType application/vnd.ms-fontobject "access plus 1 month" + ExpiresByType application/x-font-ttf "access plus 1 month" + ExpiresByType font/opentype "access plus 1 month" + ExpiresByType image/svg+xml "access plus 1 month" + diff --git a/admin.php b/public/admin.php similarity index 69% rename from admin.php rename to public/admin.php index d9d5e64..7973405 100644 --- a/admin.php +++ b/public/admin.php @@ -9,8 +9,8 @@ * file that was distributed with this source code. */ -require 'vendor/autoload.php'; +require '../flarum/vendor/autoload.php'; -$server = new Flarum\Admin\Server(__DIR__); +$server = new Flarum\Admin\Server(__DIR__, __DIR__ . '/../flarum'); $server->listen(); diff --git a/api.php b/public/api.php similarity index 69% rename from api.php rename to public/api.php index 4b70ec0..2851426 100644 --- a/api.php +++ b/public/api.php @@ -9,8 +9,8 @@ * file that was distributed with this source code. */ -require 'vendor/autoload.php'; +require '../flarum/vendor/autoload.php'; -$server = new Flarum\Api\Server(__DIR__); +$server = new Flarum\Api\Server(__DIR__, __DIR__ . '/../flarum'); $server->listen(); diff --git a/assets/.gitignore b/public/assets/.gitignore similarity index 100% rename from assets/.gitignore rename to public/assets/.gitignore diff --git a/assets/avatars/.gitignore b/public/assets/avatars/.gitignore similarity index 100% rename from assets/avatars/.gitignore rename to public/assets/avatars/.gitignore diff --git a/index.php b/public/index.php similarity index 69% rename from index.php rename to public/index.php index 626fda5..9df39e7 100644 --- a/index.php +++ b/public/index.php @@ -9,8 +9,8 @@ * file that was distributed with this source code. */ -require 'vendor/autoload.php'; +require '../flarum/vendor/autoload.php'; -$server = new Flarum\Forum\Server(__DIR__); +$server = new Flarum\Forum\Server(__DIR__, __DIR__ . '/../flarum'); $server->listen();