Migrating from WampServer, XAMPP or Laragon
Coduva does not touch other local servers; it leaves their files, settings and databases as they are. To move a project, you transfer the files and the database yourself by following the steps on this page.
Automatic migration wizard is planned
A wizard that imports projects and databases from WampServer, XAMPP and Laragon in one go is planned for v1.x. Until then, use the manual method below. See the roadmap.
Before you start
Two local servers cannot use the same port at the same time. Web servers need port 80, and databases need port 3306. If WampServer, XAMPP or Laragon is running, Coduva shows the "Another local server was detected" warning on the Control center; merely having it installed does not trigger a warning. If a port is occupied, the service card states which program is using it (e.g. "Port 80 is used by WampServer").
You have two options:
- Stop the old server. This is the cleanest approach once the migration is complete.
- Change Coduva's ports. If you want to use both programs together for a while, go to Settings → Network, enter e.g.
8080for Nginx HTTP port and e.g.3307for MariaDB port, and click each line's own Save button. A port can only be changed while its service is stopped. The HTTPS port (443) cannot be changed in version 0.2.0.
To export the database, the old server must be running. So take the database first, then stop the old server.
1. Export the database from the old server
Open phpMyAdmin on your old server (on WampServer and XAMPP, usually http://localhost/phpmyadmin/):
- Select the project's database from the left.
- Switch to the Export tab.
- Select SQL as the format, download the file, e.g.
magaza.sql.
If you prefer the command line, you can use the mysqldump tool of the old server. The path of the tool depends on the server and version:
mysqldump -u root -p --default-character-set=utf8mb4 magaza > magaza.sqlOnce the file is ready, stop the old server.
2. Place the project folder
You can leave the folder where it is or copy it to C:\Coduva\www. Coduva works in both cases.
Copying is recommended, so that the project is not affected when you remove the old server:
Copy-Item -Recurse "C:\wamp64\www\magaza" "C:\Coduva\www\magaza"If the path contains Turkish characters, move it to an ASCII path. See Paths with non-ASCII characters.
3. Import the database into Coduva
- Open the Database screen. If MariaDB is not running, click Start MariaDB on the screen.
- Enter a name in the name field, e.g.
magaza, and click Create database. The name can contain letters, digits and underscores. - Click Import on the new database's row and select the
.sqlfile you obtained in step 1.
For details, see Working with databases.
4. Add the project
- Click Projects → Add folder.
- Select the project folder. Coduva detects the type (WordPress, Laravel or PHP) and the web root.
- Choose a PHP version close to the one the project used on the old server.
- Click Add.
Coduva supports PHP 8.0 and later. A project that requires PHP 7.x must be updated first.
5. Update the connection settings
The connection details for Coduva's MariaDB are: server 127.0.0.1, port 3306 (or the new port if you changed it), user root, and an empty password.
WordPress: wp-config.php
define( 'DB_NAME', 'magaza' );
define( 'DB_USER', 'root' );
define( 'DB_PASSWORD', '' );
define( 'DB_HOST', '127.0.0.1:3306' );For DB_HOST, write 127.0.0.1:<port> instead of localhost.
Laravel: .env
APP_URL=http://magaza.test
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=magaza
DB_USERNAME=root
DB_PASSWORD=You can leave the DB_CONNECTION value as it is; the mysql driver also works with MariaDB.
Then run what is needed from the Commands tab of the project screen:
- If the
vendorfolder is missing:composer install - If
APP_KEYis missing:artisan key:generate - If the
public/storagelink is missing:artisan storage:link - To clear old caches:
artisan optimize:clear
6. Change the WordPress URLs
WordPress stores the old address (e.g. http://localhost/magaza) in the database. If you do not change it, the site will redirect you to the old address.
- On the project screen, open the Tools tab.
- In the Change URL (search-replace) card, enter
http://localhost/magazain the Old text field (the field is pre-filled with the project's new address; delete it), and enterhttp://magaza.testin the New text field. - Check the result with Dry run, then click Apply.
This operation replaces the values without corrupting serialized data. For details, see the WordPress site page.
7. Check your .htaccess rules
WampServer and XAMPP use Apache; Coduva uses Nginx. Nginx does not read .htaccess files.
- WordPress permalinks and Laravel routes work without extra configuration; Coduva redirects addresses that are not found to
index.php. - Redirect, access restriction or caching rules you wrote by hand in
.htaccessare not applied.
Apache support is planned for v1.x.
Checklist
- [ ] Database exported from the old server as
.sql - [ ] Old server stopped, or Coduva's ports changed
- [ ] Database created and imported in Coduva
- [ ] Project added with Add folder, PHP version selected
- [ ]
wp-config.phpor.envupdated - [ ] WordPress addresses changed with search-replace
- [ ] Site opens at
http://name.test/
If you get stuck on a step, click Run checks on the Diagnostics screen. See Troubleshooting.
Next step: PHP versions and settings.