Manage your servers with freedom and control. Learn more about the new Forge
Blog /

Product

Product January 14, 2020

Vapor: Separate Queue Lambdas

Starting today, new Vapor deployments will ensure a separate AWS Lambda function exists for running your queued jobs. Before this change, queued jobs executed within the CLI Lambda. This Lambda is also used for running deployment commands, CLI commands, and scheduled jobs. However, there were potential problems with this approach. For example, if queued jobs were consuming all of the Lambda's capacity, no other CLI invocations would be able to process, causing deployment commands and scheduled jobs to fail. Beginning today, we recommend that you set the `queue-memory`, `queue-concurrency`, and `queue-timeout` configurations for every environment. Being able to control the `queue-concurrency` separately from `cli-concurrency` ensures your queues won't consume all of the available capacity and cause other invocations to fail.

Mohamed Said

Product January 10, 2020

Vapor: Rotating Your RDS SSL/TLS Certificates

Amazon RDS has published new SSL/TLS certificates for connecting to your RDS databases. The current certificates will expire on March 5th, 2020. All Vapor users using RDS databases in their projects should update their instances to the new certificates. You should ensure your Vapor project requires the latest versions of the `laravel/vapor-cli` and `laravel/vapor-core` packages. After that, you may refer to [Amazon's instructions](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html) to update your instance's certificates using the AWS console.

Mohamed Said

Product December 5, 2019

Forge: Postgres Database + User Management

For a while now, Forge has allowed you to create and manage additional databases and users if you were using MySQL / MariaDB; however, we did not support this for Postgres. That changes today! You can now create and manage additional Postgres databases and users directly from the Forge UI. ![](https://laravel-blog-assets.s3.amazonaws.com/qQPWfPviCKrYgTM7qL0jpscA7WOTFQDby1eulqDu.png)If you don’t have a [Forge](https://forge.laravel.com) account, now is a great time to sign up. Forge allows you to painlessly create and manage PHP 7.4 servers which include MySQL, Redis, Memcached, and everything else you need to run robust, modern Laravel applications.

Taylor Otwell

Product November 5, 2019

Forge: User Isolation

Today on Forge, thanks to the work of Laravel staff member James Brooks, we're proud to announce support for user isolation. In short, this means you can run sites on the same server using separate Linux users. In addition, you can add SSH keys for these users, granting SSH and SFTP ability to a specific directory on your server without that user being able to access other sites on the server. To get started, you only need to click the "Use Website Isolation" checkbox when creating a new site: ![](https://laravel-blog-assets.s3.amazonaws.com/WiVqltMdqAXVKn3ITpswXhnjngwtsUIV7xzwAIWX.png)When managing your server's SSH keys, a new dropdown menu is available to select the user that the SSH key should be added to. Of course, the "forge" user is still the default user for all new servers: ![](https://laravel-blog-assets.s3.amazonaws.com/qMiZ12fdzd5ugfnMOlfdC4WMhO752jRCDTS4sBfS.png)We hope you enjoy this new feature and thank you for your continued support of the Laravel ecosystem!

Taylor Otwell

Product September 26, 2019

Vapor: Reusable Vendors

Beginning today, we are launching a new, opt-in feature for Laravel Vapor that allows Vapor to reuse the "vendor" directory from previous deployments if the contents of the vendor directory has not changed. This new feature has been launched to solve two problems. **First, since we no longer have to upload the vendor directory for every deployment, we can deploy projects significantly faster.** Secondly, large projects sometimes exceed the size constraints on AWS Lambda code artifacts. AWS restricts the size of zipped Lambda deployment artifacts to 50mb. **By uploading and handling the vendor directory separately, we can work around this restriction. However, please note that the total disk size of AWS Lambda instances is still limited to 512mb.** To begin using this feature, please upgrade your `vapor-cli` and `vapor-core` package installations to their latest versions. Next, add the `separate-vendor` flag to your `Vapor.yml` file: ``` id: 5 name: vapor-local-test separate-vendor: true ```

Taylor Otwell

Product August 8, 2019

Cashier v10

We're very excited to announce the immediate availability of Cashier v10. This new Cashier release is a major update with lots of changes to Cashier's internals and public API. Cashier has been upgraded to support the new [Payment Intents](https://stripe.com/docs/payments/payment-intents) and [Payment Methods](https://stripe.com/docs/payments/payment-methods) APIs from Stripe as well as handle European [Strong Customer Authentication (SCA)](https://stripe.com/guides/strong-customer-authentication) regulations. In this blog post, we'll briefly go over some of the major changes. For more thorough information, read [the upgrade guide](https://github.com/laravel/cashier/blob/10.0/UPGRADE.md) as well as [the new documentation](https://laravel.com/docs/billing). Payment Intents --------------- Cashier uses the new Stripe Payment Intents API, which means that it now fully supports secondary payment actions like 3D Secure. The new Payment Intents API is now Stripe's preferred way of handling all transactions. Because of PSD2 & SCA regulations, which were introduced in the EU, banks can now require card payments to provide a secondary confirmation action. Often, this is a 3D Secure confirmation. Because of these regulations, Cashier needed a way to inform users that a secondary payment confirmation action was required, as well as provide an easy method of completing that secondary action. In Cashier v10, exceptions will be thrown for any payment actions that might trigger a secondary payment action, such as creating a new subscription: ``` use Laravel\Cashier\Exceptions\IncompletePayment; try {   $subscription = $user->newSubscription('default', $planId)     ->create($paymentMethod); } catch (IncompletePayment $exception) {   return redirect()->route(     'cashier.payment',     [$exception->payment->id, 'redirect' => route('home')]   ); } ``` In the example above, the exception is caught and the user is redirected to the new payment confirmation page that ships with Cashier: ![](https://laravel-blog-assets.s3.amazonaws.com/M1kbK19o7JIA7kGFcFWvA8JsbwhKV4os1Jh6pzQh.png)After confirming the payment, the user will be redirected to the path you specify. Cashier's payment confirmation page can be published to your own application so that you can customize the screen to match the look and feel of your own application. > To learn more about gathering payment methods and creating subscriptions, please refer to [the complete Cashier documentation](https://laravel.com/docs/billing). Payment Methods --------------- Stripe's new [Payment Methods API](https://stripe.com/docs/payments/payment-methods) is the new preferred way of gathering payment method information and exchanging that information for a secure token that can be used to generate charges or create subscriptions. Per Stripe's recommendations, the previous "Sources" and token based Stripe APIs have been removed from Cashier and replaced by the new Payment Methods API. Stripe provides complete backwards compatibility with the old Sources API, so customers that already subscribed to your application will continue to be charged as expected. Much More --------- In addition to support for Payment Intents and Payment Methods, there's a variety of additional changes and improvements like: - Proper support for currency locales - Secondary payment action notifications - Auto registration of webhooks - Improved currency formatting - A new invoice layout - And much more We hope you enjoy this new Cashier release!

Dries Vints

Product April 16, 2019

Cashier 9.3

Information about the new 9.3 release and the upcoming major v10 release.

Dries Vints

Product February 7, 2019

Connect to your Forge server using SSH or SFTP

Using Laravel Forge you can easily configure push-to-deploy to your sites, you can also manually deploy from the dashboard. However, sometimes you wish to access your sites' files directly using SSH or SFTP. To be able to do that you'll need to add your machine's public key to the server, this step allows the SSH service on your server to identify connections from your computer and grant access. > Depending on your Operating System, you can find guides on how to generate an SSH key [in this link](https://confluence.atlassian.com/bitbucketserver/creating-ssh-keys-776639788.html). To add an SSH key to your server, head to the SSH Keys section of the server settings screen: ![](https://laravel-blog-assets.s3.amazonaws.com/hjVjJrzw3v1GBhswZu8HZsAIlWRzefLSaTsjGgtY.png)Once the key is added, you can SSH into your instance using the following command: ``` ssh forge@ip_address_here ``` To use SFTP, you need to download an SFTP client like [FileZilla](https://filezilla-project.org/) or [Cyberduck](https://cyberduck.io/). Once you run the client, provide the credentials as follow: - Protocol: `SFTP` - Address/Server: `your_ip_address` - Port: `22` - Username: `forge` - Password: Leave this blank. - SSH Private Key: Location to the private key on your machine. Once you press connect, the client will communicate with the server and acquire access to all the files and directories.

Mohamed Said

Product January 22, 2019

Forge Alias Domains

Beginning today, you may associate multiple top-level, root domains with a single Forge site. To get started, add the aliases on the "Meta" tab of your site's management panel: ![](https://laravel-blog-assets.s3.amazonaws.com/S2PynDQ5RO2blRaoNeryDoqUM582fL6HRcvQqDMq.png)Forge will automatically take care of configuring of redirecting the "www" sub-domain to the root domain. Or, if the alias contains "www", Forge will automatically redirect the root domain to the "www" sub-domain. If your site is using SSL, you are responsible for ensuring that your activated SSL certificate contains all of the domains that your site responds to. If you don’t have a [Forge](https://forge.laravel.com) account, now is a great time to sign up. Forge allows you to painlessly create and manage PHP 7.3 servers which include MySQL, Redis, Memcached, and everything else you need to run robust, modern Laravel applications.

Taylor Otwell

Showing 151 - 160 of 167 results

Stay connected with the latest Laravel news